Methods and systems for generating graphical content through easing and paths

ABSTRACT

Digital image editors provide tools to modify or manipulate a digital image. For animation, video, etc. this manipulation and/or modification must be undertaken over a portion of the digital content&#39;s duration. This can represent tens, hundreds, thousands of equivalent images (i.e. each frame) to be modified and/or manipulated. The invention provides digital tools allowing effects, e.g. a manipulation and/or modification, from relatively simple transitions through to highly complex transitions, to be defined and then added to digital content. Further, these digital tools can be independent of considerations of the underlying content such that an effect designed with these digital tools may be applied over a still image, video content, animation etc. without requiring the user to define frames within the digital content etc. Further, the path and/or other characteristics of the modification and/or manipulation may be linked to other characteristics of the digital element, the digital content, external factors etc.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of priority as a continuation patentapplication of U.S. patent application Ser. No. 17/235,163 filed Apr.20, 2021; the entire contents of which are incorporated herein byreference.

FIELD OF THE INVENTION

This invention relates to digital imagery and more particularly togenerating graphical content by associating one or more aspects of thegraphical content with a path and/or an easing associated with the pathwhere the path and/or easing represent a relationship between one ormore parameters of the graphical content and one or more otherparameters of the graphical content.

BACKGROUND OF THE INVENTION

Within digital graphics and digital image editors a user may employ avirtual “paintbrush” (also referred to herein as a “brush”, “brushtool”, or mark making tool) to modify or manipulate a digital image bydepositing virtual paint or virtual ink. However, within other forms ofdigital content such as animation, video, etc. the manipulation and/ormodification will typically occur over a portion of the digitalcontent's duration, representing a period of time that the manipulationand/or modification is applicable for. This may be defined within thedigital content editor, e.g. a digital video editor or animationsoftware for example, before a final rendered output is generated fordistribution such as on demand, downloading, or streaming for example.

Accordingly, the manipulation and/or modification must be established ata starting point within the digital content, have a defined end pointwithin the digital content and a defined transition from the start tothe end point. Within the prior art tools for adding animated text etc.have been established to ease the task of the user. However, theseeffects are pre-defined. Accordingly, it would be beneficial to provideusers with digital tools allowing them to generate an effect, e.g. amanipulation and/or modification, which they can define, from those withrelatively simple transitions through to highly complex transitions, andthen add to digital content. It would be further beneficial for thedigital tools to be independent of considerations of the underlyingcontent such that an effect designed with these digital tools may beapplied over a still image, video content, animation etc. withoutrequiring the user to define frames within the digital content etc.

Other aspects and features of the present invention will become apparentto those ordinarily skilled in the art upon review of the followingdescription of specific embodiments of the invention in conjunction withthe accompanying figures.

SUMMARY OF THE INVENTION

It is an object of the present invention to address limitations withinthe prior art relating to digital imagery and more particularly togenerating graphical content by associating one or more aspects of thegraphical content with a path and/or an easing associated with the pathwhere the path and/or easing represent a relationship between one ormore parameters of the graphical content and one or more otherparameters of the graphical content.

In accordance with an embodiment of the invention there is provided acomputer executable instructions stored upon a non-volatile,non-transitory storage medium where the executable instructions whenexecuted by one or more processors of a system configure the system toexecute a process comprising:

-   defining a path within a virtual space to be associated with a    digital element;-   defining an easing associated with the path;-   associating the digital element, the path and easing with an item of    digital content; and rendering the digital element within the item    of digital content where the digital element is at least one of    modified and manipulated in dependence upon the path and easing.

In accordance with an embodiment of the invention there is provided amethod comprising:

-   defining within a software application in execution upon an    electronic device a path within a virtual space to be associated    with a digital element;-   defining within the software application in execution upon the    electronic device an easing associated with the path;-   associating with the software application in execution upon the    electronic device the digital element, the path and easing with an    item of digital content; and-   rendering the digital element within the item of digital content    where the digital element is at least one of modified and    manipulated in dependence upon the path and easing.

In accordance with an embodiment of the invention there is provided asystem comprising:

-   a processor;-   a non-transitory, non-volatile memory, the memory for storing    executable instructions; and-   a display; wherein-   the executable instructions when executed by the processor of the    system configure the system to execute a process comprising:    -   defining a path within a virtual space to be associated with a        digital element;    -   defining an easing associated with the path;    -   associating the digital element, the path and easing with an        item of digital content; and    -   rendering upon the display the digital element within the item        of digital content where the digital element is at least one of        modified and manipulated in dependence upon the path and easing.

Other aspects and features of the present invention will become apparentto those ordinarily skilled in the art upon review of the followingdescription of specific embodiments of the invention in conjunction withthe accompanying figures.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present invention will now be described, by way ofexample only, with reference to the attached Figures, wherein:

FIG. 1A depicts a network environment within which embodiments of theinvention may be employed;

FIG. 1B depicts a wireless portable electronic device supportingcommunications to a network such as depicted in FIG. 1A and assupporting embodiments of the invention;

FIG. 1C depicts home screen of a graphics editing system and/or graphicsediting application/platform (GESGEAP) implementing one or moreembodiments of the invention;

FIG. 2 depicts exemplary prior art graphical user interface (GUIs) for auser selecting an aspect of digital content to be added within a GESGEAPaccording to embodiments of the invention;

FIG. 3 depicts spaces and colour space representations for rendering toa user within a GESGEAP GUI according to embodiments of the invention;

FIG. 4 depicts exemplary paths and path rendering styles formanipulating and/or modifying a digital element within a GESGEAP GUIaccording to embodiments of the invention;

FIG. 5 depicts an exemplary path being established for manipulatingand/or modifying a digital element within a GESGEAP GUI according to amethodology employing keyframes;

FIG. 6 depicts an application of easing to a path established formanipulating and/or modifying a digital element within a GESGEAP GUIaccording to embodiments of the invention;

FIG. 7 depicts an exemplary sequence for a user adding a digital pathand easing for manipulating and/or modifying a digital element within aGESGEAP GUI according to embodiments of the invention;

FIG. 8 depicts an exemplary process flow for establishing a digital pathand easing for manipulating and/or modifying a digital element within aGESGEAP GUI according to embodiments of the invention;

FIG. 9 depicts an exemplary process flow for establishing a digital pathand easing for manipulating and/or modifying a digital element within aGESGEAP GUI according to embodiments of the invention; and

FIG. 10 depicts an exemplary process flow for establishing a digitalpath and easing for manipulating and/or modifying a digital elementwithin a GESGEAP GUI according to embodiments of the invention.

DETAILED DESCRIPTION

The present invention is directed to digital imagery and moreparticularly to generating graphical content by associating one or moreaspects of the graphical content with a path and/or an easing associatedwith the path where the path and/or easing represent a relationshipbetween one or more parameters of the graphical content and one or moreother parameters of the graphical content.

The ensuing description provides exemplary embodiment(s) only, and isnot intended to limit the scope, applicability, or configuration of thedisclosure. Rather, the ensuing description of the exemplaryembodiment(s) will provide those skilled in the art with an enablingdescription for implementing an exemplary embodiment. It beingunderstood that various changes may be made in the function andarrangement of elements without departing from the spirit and scope asset forth in the appended claims.

A “portable electronic device” (PED) as used herein and throughout thisdisclosure, refers to a wireless device used for communications andother applications that requires a battery or other independent form ofenergy for power. This includes devices, but is not limited to, such asa cellular telephone, smartphone, personal digital assistant (PDA),portable computer, pager, portable multimedia player, portable gamingconsole, laptop computer, tablet computer, and an electronic reader.

A “fixed electronic device” (FED) as used herein and throughout thisdisclosure, refers to a wireless and/or wired device used forcommunications and other applications that requires connection to afixed interface to obtain power. This includes, but is not limited to, alaptop computer, a personal computer, a computer server, a kiosk, agaming console, a digital set-top box, an analog set-top box, anInternet enabled appliance, an Internet enabled television, and amultimedia player.

A “software application”, also referred to as an “application” or “app”,as used herein may refer to, but is not limited to, a “standalonesoftware application”, an element of a “software suite”, a computerprogram designed to allow an individual to perform an activity, acomputer program designed to allow an electronic device to perform anactivity, and a computer program designed to communicate with localand/or remote electronic devices. An application thus differs from anoperating system (which runs a computer), a utility (which performsmaintenance or general-purpose chores), and a programming tools (withwhich computer programs are created). Generally, within the followingdescription with respect to embodiments of the invention an applicationis generally presented in respect of software permanently and/ortemporarily installed upon a PED and/or FED.

An “enterprise” as used herein may refer to, but is not limited to, aprovider of a service and/or a product to a user, customer, or consumer.This includes, but is not limited to, a retail outlet, a store, amarket, an online marketplace, a manufacturer, an online retailer, acharity, a utility, and a service provider. Such enterprises may bedirectly owned and controlled by a company or may be owned and operatedby a franchisee under the direction and management of a franchiser.

A “service provider” as used herein may refer to, but is not limited to,a third party provider of a service and/or a product to an enterpriseand/or individual and/or group of individuals and/or a device comprisinga microprocessor. This includes, but is not limited to, a retail outlet,a store, a market, an online marketplace, a manufacturer, an onlineretailer, a utility, an own brand provider, and a service providerwherein the service and/or product is at least one of marketed, sold,offered, and distributed by the enterprise solely or in addition to theservice provider.

A “third party” or “third party provider” as used herein may refer to,but is not limited to, a so-called “arm's length” provider of a serviceand/or a product to an enterprise and/or individual and/or group ofindividuals and/or a device comprising a microprocessor wherein theconsumer and/or customer engages the third party but the actual serviceand/or product that they are interested in and/or purchase and/orreceive is provided through an enterprise and/or service provider.

A “user” as used herein may refer to, but is not limited to, anindividual or group of individuals exploiting a software applicationproviding a graphics editing system and/or graphics editingapplication/platform (GESGEAP) implementing one or more embodiments ofthe invention. This includes, but is not limited to, privateindividuals, employees of organizations and/or enterprises, members ofcommunity organizations, members of charity organizations, men, women,children, teenagers, and animals. In its broadest sense the user mayfurther include, but not be limited to, software systems, mechanicalsystems, robotic systems, android systems, etc. that may becharacterised by providing a gesture or data relating to a gesture to asoftware application providing a graphics editing system and/or graphicsediting application/platform (GESGEAP) implementing one or moreembodiments of the invention.

A “wearable device” or “wearable sensor” relates to miniature electronicdevices that are worn by the user including those under, within, with oron top of clothing and are part of a broader general class of wearabletechnology which includes “wearable computers” which in contrast aredirected to general or special purpose information technologies andmedia development. Such wearable devices and/or wearable sensors mayinclude, but not be limited to, smartphones, smart watches, e-textiles,smart shirts, activity trackers, smart glasses, environmental sensors,medical sensors, biological sensors, physiological sensors, chemicalsensors, ambient environment sensors, position sensors, neurologicalsensors, drug delivery systems, medical testing and diagnosis devices,and motion sensors.

“Electronic content” (also referred to as “content” or “digitalcontent”) as used herein may refer to, but is not limited to, any typeof content that exists in the form of digital data as stored,transmitted, received and/or converted wherein one or more of thesesteps may be analog although generally these steps will be digital.Forms of digital content include, but are not limited to, informationthat is digitally broadcast, streamed, or contained in discrete files.Viewed narrowly, types of digital content include popular media typessuch as MP3, JPG, AVI, TIFF, AAC, TXT, RTF, HTML, XHTML, PDF, XLS, SVG,WMA, MP4, FLV, and PPT, for example, as well as others. Within a broaderapproach digital content mat include any type of digital information,e.g. digitally updated weather forecast, a GPS map, an eBook, aphotograph, a video, a Vine™, a blog posting, a Facebook™ posting, aTwitter™ tweet, online TV, etc. The digital content may be any digitaldata that is capable of being at least one of generated, selected,created, modified, and transmitted with a software application allowinga user of the software application to generate, select, create, modify,and edit visual and/or audiovisual content within the digital content.

Reference to a “document” as used herein may refer to, but is notlimited to, any machine-readable and machine-storable work product. Adocument may be a file, a combination of files, one or more files withembedded links to other files, etc. The files may be of any type, suchas text, audio, image, video, etc. Parts of a document to be rendered toan end user can be thought of as “content” of the document. A documentmay include “structured data” containing both content (words, pictures,etc.) and some indication of the meaning of that content (for example,e-mail fields and associated data, HTML tags and associated data, etc.).In the context of the Internet, a common document is a Web page. Webpages often include content and may include embedded information (suchas meta-information, hyperlinks, etc.) and/or embedded instructions(such as Javascript, etc.). In many cases, a document has a unique,addressable, storage location and can therefore be uniquely identifiedby this addressable location such as a universal resource locator (URL)for example used as a unique address used to access information on theInternet. “Document information” as used herein may refer to, but is notlimited to, may include any information included in the document,information derivable from information included in the document(referred to as “document derived information”), and/or informationrelated to the document (referred to as “document related information”),as well as an extensions of such information (e.g., information derivedfrom related information). An example of document derived information isa classification based on textual content of a document. Examples ofdocument related information include document information from otherdocuments with links to the instant document, as well as documentinformation from other documents to which the instant document links.

A “mark making tool”, also referred to as a “mark tool” or “markingtool”, as used herein may refer to, a tool for applying a visual effectto a graphics image within a software application including, forexample, a graphics generating tool, a graphics editing tool, and animage processing tool. Accordingly, a mark making tool may simulate realand unreal systems for the application, removal, or modification ofinformation including, but not limited to, colour, texture, and contentto a graphics image. As such a mark making tool may include, but is notlimited to, a brush, an air brush, a pen, a pencil, a nib, a spray can,a sprayer, a sponge, a knife, a mathematical algorithm, a physicalsystem of elements obeying physical laws, and a physical system obeyingnon-physical laws.

A “brush stroke” or “stroke”, as used herein may refer to, but is notlimited to a class of mark making tools that simulate physical brushesfor applying a medium, e.g. oil, watercolour, acrylic, onto a canvas,document, or other surface. A stroke may alternatively be simulatingother physical medium application techniques including, but not limited,to airbrushes, chalk, markers, palette knives and spongers for example.Accordingly, within this description the term brush is not limited to aphysical brush but should be interpreted as meaning a tool to apply amedium to a surface.

A “brush engine”, as used herein may refer to, a module or modulesforming part of a graphics software application which generates brushstrokes within the graphics software application to render the brushstrokes upon the virtual canvas or other surface to which the brushstroke(s) are applied.

A “gesture”, also referred to as a “motion” or “input”, as used hereinmay refer to, an action by a user resulting in the movement and/oraction of a mark making tool relative to a graphics image within asoftware application including, for example, a graphics generating tool,a graphics editing tool, and an image processing tool. As such a gesturemay include, but not be limited to, a swipe, a tap, a motion, a press,and a click captured by the software application through an interfaceincluding, but not limited to, image processing, image capture, audiocommand, a user interface, and a haptic interface.

A “gesture characteristic”, also referred to as a “gesture expression”or an “expression”, as used herein may refer to an aspect of a gestureof a user or setting exploited within a software application to modify avalue relating to a mark making tool within the software application. Assuch as a gesture characteristic or expression may include, but not belimited, to velocity, direction, pressure, wheel, tilt, bearing,rotation, source of the gesture, and random. A source of the gesture mayinclude, but not be limited to, a touchpad, a stylus, a mouse, keypad,keyboard, accelerometer, or accelerometer derived data, tracked motionof a user or a predetermined portion of a user, an external imagesource, an external audiovisual source, an external multimedia source,biometric data of a user, and an item of environmental data. Anexpression or gesture characteristic may be applied to one or morebehaviours/aspects of a mark making tool including, but not limited to,global chaos, local chaos, smoothness, damping, jitter, number, count,weighting, force, direction, mapping, colour, colour variability,resaturation, bleed, feature, grain, concentration, setting rate,viscosity, wetness, opacity, and hardness.

A “user interface”, also referred to as a “controller” or “hapticinterface”, as used herein may refer to a device and/or system capturingone or more actions of a user and providing these to a softwareapplication. Accordingly, a user interface may include an imagecapture/processing system, a gesture recognition system, a stylus, awearable device, a touchscreen, a keypad, a mouse, a touchpad, a tablet,an accelerometer, and a motion recognition system.

“Stroke tapestry” or a “stroke tapestry”, as used herein refers to, butis not limited to, a software feature or a result of a software featurewithin a graphics editing system and/or graphics editingapplication/platform (GESGEAP) wherein an area of graphical content isautomatically filled using a series of strokes generated by the GESGEAP.

A “software engine” (engine) as used herein refers to, but is notlimited to, a piece of software providing an encapsulated block offunctionality.

A “spooler” as used herein refers to, but is not limited to, a softwarecomponent of a GESGEAP which processes stroke data, such as physicalcoordinates, and expression (gesture characteristic) data to generate astroke.

A “particle brush” as used herein refers to, but is not limited to, amark making tool that exploits physical interactions which are appliedto a series of particles emitted from a predetermined point, e.g. thecentre of the mark making tool, such that the particles draw a patternof lines (paths) as they cross the working area (e.g. screen or virtualcanvas) where their motion is constrained by a physical effect where thephysical effect can be defined through configurable parameters and/orgesture characteristics. Such physical effects may include, but are notlimited to, physical systems obeying physical laws such as springs (e.g.radial, ring or mesh configurations of particles joined by virtualsprings), gravity, electrostatics, magnetics, etc. or physical systemsobeying non-physical laws, which may for example be definedmathematically.

A “digital element” as used herein refers to, but is not limited to, anitem of digital content such as a digital image, a digital animation, abrush stroke, a stroke tapestry, digital video, etc. which can bemanipulated and/or modified using a GESGEAP according to embodiments ofthe invention. The digital element may be stored within a memoryaccessible to the GESGEAP for retrieval and use or it may be generatedin an initial step of establishing the manipulation and/or modification.The digital element may be generated and stored without any definedtiming or timebase so that the digital element may be applied to thedigital content and its duration may accordingly be part of themanipulation and/or modification of the digital element within theGESGEAP according to embodiments of the invention for generating thedigital effect being added to the original digital content.

Referring to FIG. 1A there is depicted a Network Environment 100A withinwhich embodiments of the invention may be employed supporting graphicsediting systems and graphics editing applications/platforms (GESGEAPs)according to embodiments of the invention. Such GESGEAPs, for exampleincluding digital graphics editor and digital painting applications. Asshown first and second user groups 100A and 100B respectively interfaceto a telecommunications Network 100. Within the representativetelecommunication architecture a remote central exchange 180communicates with the remainder of a telecommunication service providersnetwork via the Network 100 which may include for example long-haulOC-48/OC-192 backbone elements, an OC-48 wide area network (WAN), aPassive Optical Network, and a Wireless Link. The central exchange 180is connected via the Network 100 to local, regional, and internationalexchanges (not shown for clarity) and therein through Network 100 tofirst and second cellular APs 195A and 195B respectively which provideWi-Fi cells for first and second user groups 100A and 100B,respectively. Also connected to the Network 100 are first and secondWi-Fi nodes 110A and 110B, the latter of which being coupled to Network100 via router 105. Second Wi-Fi node 110B is associated with Enterprise160, e.g. Disney Pixar™, within which are other first and second usergroups 100A and 100B. Second user group 100B may also be connected tothe Network 100 via wired interfaces including, but not limited to, DSL,Dial-Up, DOCSIS, Ethernet, G.hn, ISDN, MoCA, PON, and Power linecommunication (PLC) which may or may not be routed through a router suchas router 105.

Within the cell associated with first AP 110A the first group of users100A may employ a variety of PEDs including for example, laptop computer155, portable gaming console 135, tablet computer 140, smartphone 150,cellular telephone 145 as well as portable multimedia player 130. Withinthe cell associated with second AP 110B are the second group of users100B which may employ a variety of FEDs including for example gamingconsole 125, personal computer 115 and wireless/Internet enabledtelevision 120 as well as cable modem 105. First and second cellular APs195A and 195B respectively provide, for example, cellular GSM (GlobalSystem for Mobile Communications) telephony services as well as 3G and4G evolved services with enhanced data transport support. Secondcellular AP 195B provides coverage in the exemplary embodiment to firstand second user groups 100A and 100B. Alternatively the first and seconduser groups 100A and 100B may be geographically disparate and access theNetwork 100 through multiple APs, not shown for clarity, distributedgeographically by the network operator or operators. First cellular AP195A as show provides coverage to first user group 100A and environment170, which comprises second user group 100B as well as first user group100A. Accordingly, the first and second user groups 100A and 100B mayaccording to their particular communications interfaces communicate tothe Network 100 through one or more wireless communications standardssuch as, for example, IEEE 802.11, IEEE 802.15, IEEE 802.16, IEEE802.20, UMTS, GSM 850, GSM 900, GSM 1800, GSM 1900, GPRS, ITU-R 5.138,ITU-R 5.150, ITU-R 5.280, and IMT-1000. It would be evident to oneskilled in the art that many portable and fixed electronic devices maysupport multiple wireless protocols simultaneously, such that forexample a user may employ GSM services such as telephony and SMS andWi-Fi/WiMAX data transmission, VOIP and Internet access. Accordinglyportable electronic devices within first user group 100A may formassociations either through standards such as IEEE 802.15 or Bluetoothas well in an ad-hoc manner.

Also connected to the Network 100 are Social Networks (SOCNETS) 165,first and second graphics editors 170A and 170B respectively, e.g.Corel™ Painter™ and Adobe™ Illustrator, first and second web basedgraphic editors 170C and 170D respectively, e.g. PhotoCommander™ andFatPaint™, and first and second video editing tools 175A and 175Brespectively, e.g. Corel™ MobileStudio™ and Cinnerla™, first and secondgraphics tools 175C and 175D as well as first to third servers 190A to190C respectively which together with others, not shown for clarity.First to third servers 190A to 190C respectively may host according toembodiments of the inventions multiple services associated with aprovider of graphics editing systems and graphics editingapplications/platforms (GESGEAPs); a provider of a SOCNET or SocialMedia (SOME) exploiting GESGEAP features; a provider of a SOCNET and/orSOME not exploiting GESGEAP features; a provider of services to PEDSand/or FEDS; a provider of one or more aspects of wired and/or wirelesscommunications; an Enterprise 160 exploiting GESGEAP features; licensedatabases; content databases; image databases; content libraries;customer databases; websites; and software applications for download toor access by FEDs and/or PEDs exploiting and/or hosting GESGEAPfeatures. First to third servers 190A to 190C respectively may also hostfor example other Internet services such as a search engine, financialservices, third party applications and other Internet based services.

Accordingly, a graphics designer and/or user (GRADUS or user) mayexploit a PED and/or FED within an Enterprise 160, for example, andaccess one of the first or second primary content servers 190A and 190Brespectively to perform an operation such as accessing/downloading anapplication which provides GESGEAP features according to embodiments ofthe invention; execute an application already installed providingGESGEAP features; execute a web based application providing GESGEAPfeatures; or access content. Similarly, a GRADUS may undertake suchactions or others exploiting embodiments of the invention exploiting aPED or FED within first and second user groups 100A and 100Brespectively via one of first and second cellular APs 195A and 195Brespectively and first Wi-Fi nodes 110A.

Now referring to FIG. 1B there is depicted a Schematic 100B of a networkto which an Electronic Device 101 supporting graphics editing systemsand graphics editing applications/platforms (GESGEAPs) and GESGEAPfeatures according to embodiments of the invention is connected.Electronic Device 101 may, for example, be a PED, a FED, or a wearabledevice and may include additional elements above and beyond thosedescribed and depicted. Also depicted in conjunction with the ElectronicDevice 101 are exemplary internal and/or external elements forming partof a simplified functional diagram of an Electronic Device 101 within anoverall simplified schematic of a system supporting SAP featuresaccording to embodiments of the invention which include includes anAccess Point (AP) 106, such as a Wi-Fi AP for example, a Network Device107, such as a communication server, streaming media server, and arouter. The Network Device 107 may be coupled to the AP 106 via anycombination of networks, wired, wireless and/or optical communicationlinks. Also connected to the Network 102 are Social Media Networks(SOCNETS) 165; first and second remote systems 170A and 170Brespectively; first and second websites 175A and 175B respectively;first and third 3rd party service providers 175C and 175E respectively;and first to third servers 190A to 190C, respectively.

The Electronic Device 101 includes one or more Processors 110 and aMemory 112 coupled to Processor(s) 110. AP 106 also includes one or moreProcessors 111 and a Memory 113 coupled to Processor(s) 210. Anon-exhaustive list of examples for any of Processors 110 and 111includes a central processing unit (CPU), a digital signal processor(DSP), a reduced instruction set computer (RISC), a complex instructionset computer (CISC), a graphics processing unit (GPU) and the like.Furthermore, any of Processors 110 and 111 may be part of applicationspecific integrated circuits (ASICs) or may be a part of applicationspecific standard products (ASSPs). A non-exhaustive list of examplesfor Memories 112 and 113 includes any combination of the followingsemiconductor devices such as registers, latches, ROM, EEPROM, flashmemory devices, non-volatile random access memory devices (NVRAM),SDRAM, DRAM, double data rate (DDR) memory devices, SRAM, universalserial bus (USB) removable memory, and the like.

Electronic Device 101 may include an audio input element 214, forexample a microphone, and an Audio Output Element 116, for example, aspeaker, coupled to any of Processor(s) 110. Electronic Device 101 mayinclude an Optical Input Element 218, for example, a video camera orcamera, and an Optical Output Element 220, for example an LCD display,coupled to any of Processor(s) 110. Electronic Device 101 also includesa Keyboard 115 and Touchpad 117 which may for example be a physicalkeyboard and touchpad allowing the user to enter content or selectfunctions within one of more Applications 122. Alternatively, theKeyboard 115 and Touchpad 117 may be predetermined regions of a touchsensitive element forming part of the display within the ElectronicDevice 101. The one or more Applications 122 that are typically storedin Memory 112 and are executable by any combination of Processor(s) 110.Electronic Device 101 also includes Accelerometer 160 providingthree-dimensional motion input to the Processor(s) 110 and GPS 162 whichprovides geographical location information to Processor(s) 110.

Electronic Device 101 includes a Protocol Stack 124 and AP 106 includesan AP Stack 125. Within Protocol Stack 124 is shown an IEEE 802.11protocol stack but alternatively may exploit other protocol stacks suchas an Internet Engineering Task Force (IETF) multimedia protocol stackfor example or another protocol stack. Likewise, AP Stack 125 exploits aprotocol stack but is not expanded for clarity. Elements of ProtocolStack 124 and AP Stack 125 may be implemented in any combination ofsoftware, firmware and/or hardware. Protocol Stack 124 includes an IEEE802.11-compatible PHY module that is coupled to one or more Tx/Rx &Antenna Circuits 128A and an IEEE 802.11-compatible MAC module which iscoupled to an IEEE 802.2-compatible LLC module. Protocol Stack 124 alsoincludes modules for Network Layer IP, a transport layer User DatagramProtocol (UDP), a transport layer Transmission Control Protocol (TCP), asession layer Real Time Transport Protocol (RTP), a Session AnnouncementProtocol (SAP), a Session Initiation Protocol (SIP) and a Real TimeStreaming Protocol (RTSP). Protocol Stack 124 includes a presentationlayer Call Control and Media Negotiation module 150, one or more audiocodecs and one or more video codecs. Applications 122 may be able tocreate maintain and/or terminate communication sessions with the NetworkDevice 107 by way of AP 106 and therein via the Network 102 to one ormore of Social Networks (SOCNETS) 165; first and second graphics editors170A and 170B respectively, e.g. Corel™ Painter™ and Adobe™ Illustrator,first and second web based graphic editors 170C and 170D respectively,e.g. PhotoCommander™ and FatPaint™, and first and second video editingtools 175A and 175B respectively, e.g. Corel™ MobileStudio™ andCinnerla™, first and second graphics tools 175C and 175D as well asfirst to third servers 190A to 190C respectively which together withothers, not shown for clarity.

Typically, Applications 122 may activate any of the SAP, SIP, RTSP, andCall Control & Media Negotiation 150 modules for that purpose.Typically, information may propagate from the SAP, SIP, RTSP, CallControl & Media Negotiation 150 to the PHY module via the TCP module, IPmodule, LLC module and MAC module. It would be apparent to one skilledin the art that elements of the Electronic Device 101 may also beimplemented within the AP 106 including but not limited to one or moreelements of the Protocol Stack 124, including for example an IEEE802.11-compatible PHY module, an IEEE 802.11-compatible MAC module, andan IEEE 802.2-compatible LLC module. The AP 106 may additionally includea network layer IP module, a transport layer User Datagram Protocol(UDP) module and a transport layer Transmission Control Protocol (TCP)module as well as a session layer Real Time Transport Protocol (RTP)module, a Session Announcement Protocol (SAP) module, a SessionInitiation Protocol (SIP) module and a Real Time Streaming Protocol(RTSP) module, and a call control & media negotiation module. Portableelectronic devices (PEDs) and fixed electronic devices (FEDs)represented by Electronic Device 101 may include one or more additionalwireless or wired interfaces in addition to or in replacement of thedepicted IEEE 802.11 interface which may be selected from the groupcomprising IEEE 802.15, IEEE 802.16, IEEE 802.20, UMTS, GSM 850, GSM900, GSM 1800, GSM 1900, GPRS, ITU-R 5.138, ITU-R 5.150, ITU-R 5.280,IMT-1010, DSL, Dial-Up, DOCSIS, Ethernet, G.hn, ISDN, MoCA, PON, andPower line communication (PLC).

The Front End Tx/Rx & Antenna 128A wirelessly connects the ElectronicDevice 101 with the Antenna 128B on Access Point 206, wherein theElectronic Device 101 may support, for example, a national wirelessstandard such as GSM together with one or more local and/or personalarea wireless protocols such as IEEE 802.11 a/b/g Wi-Fi, IEEE 802.16WiMAX, and IEEE 802.15 Bluetooth for example. Accordingly, it would beevident to one skilled the art that the Electronic Device 101 mayaccordingly download original software and/or revisions for a variety offunctions. In some embodiments of the invention the functions may not beimplemented within the original as sold Electronic Device 101 and areonly activated through a software/firmware revision and/or upgradeeither discretely or in combination with a subscription or subscriptionupgrade for example. Accordingly, as will become evident in respect ofthe description below the Electronic Device 101 may provide a user withaccess to one or more GESGEAP including, but not limited to, softwareinstalled upon the Electronic Device 101 or software installed upon oneor more remote systems such as those associated with Social Networks(SOCNETS) 165; first and second graphics editors 170A and 170Brespectively, e.g. Corel™ Painter™ and Adobe™ Illustrator, first andsecond web based graphic editors 170C and 170D respectively, e.g.PhotoCommander™ and FatPaint™, and first and second video editing tools175A and 175B respectively, e.g. Corel™ MobileStudio™ and Cinnerla™,first and second graphics tools 175C and 175D as well as first to thirdservers 190A to 190C respectively.

Now referring to FIG. 1C there is depicted a Home Screen 100C of adigital graphics editor, digital painting, application, the GESGEAP,according to an embodiment of the invention, e.g. Corel™ Painter™.Accordingly, within the Home Screen 100C a user has opened a Window1000, which may for example be untextured, textured to mimic a paper,canvas, or other surface for “painting.” Optionally, a texture may beapplied prior to the user beginning work, during their work, or upon itscompletion. Similarly, other effects may be added by the user throughthe Menu Bar 181 including employing multiple layers with differenteffects and/or properties, different illuminations, etc. as known withinthe art. The user may also be resented with a series of menus that canbe manipulated, docked, undocked, and moved with respect to the HomeScreen 100C and allowing the user to select, adjust, modify, add,delete, and control various aspects of their interaction with theGESGEAP. These include, but are not limited to:

-   -   Mark Making Tool Selector and Settings 182;    -   Main Feature Menu 183;    -   Canvas Navigator Menu 184;    -   Colour Menu 185, for the overall application;    -   Layer/Channel Management Menu 186    -   Flow Mapping Menu 187, which allows an underlying mapping to be        applied to effects although actual flow map employed is itself        not rendered;    -   Stroke Tapestry Menu 188, which allows an area to be        automatically filled based upon the settings within the menu;        and    -   Path and Easing Menu 189.

Accordingly, within the embodiments of the invention described below andin respect of FIGS. 2 to 10 a user may select features andfunctionalities according to embodiments of the invention and establishaspects of these at different settings through such menus and others aswould be evident to one of skill in the art. Within the followingdescriptions a digital element may include, but not be limited to:

-   -   a brush stroke;    -   an impression or series of impressions of a mark making tool;    -   a particle brush;    -   a stroke tapestry;    -   a digital image;    -   a digital animation;    -   digital video content;    -   digital audio content;    -   digital audiovisual content; and    -   digital text content.

Whilst within the following descriptions reference is made to a brushstroke, being one form of mark making tool easily visualized by thereader of this specification, it would be apparent to one of skill inthe art that whilst the concepts may be described and depicted withrespect to brush strokes and brush mark making tools the methods andsystems described may be applied to other mark making tools. Forexample, such mark making tools which may exploit embodiments of theinvention may be provided within different categories of mark makingtools including, but not limited to, airbrushes, chalks, gels, gouache,impasto, markers, palette knives, watercolour, and sponges.

Whilst within the following descriptions reference is made to a digitalimage as being one form of digital content easily visualized by thereader of this specification, it would be apparent to one of skill inthe art that whilst the concepts may be described and depicted withrespect to an image or element of text that the methods and systemsdescribed may be applied to rendered images of mark making tools, abrush stroke, an impression or series of impressions of a mark makingtool, a particle brush, a stroke tapestry, a digital animation, digitalvideo content, digital audio audiovisual content, digital text content,and digital content.

It would be evident that the Path and Easing Menu 189 in FIG. 1C is anexemplary schematic of a GUI menu presented to a user of a GESGEAPexploiting embodiments of the invention such as a digital graphicssoftware application or a digital animation software application, forexample. As depicted the Path and Easing Menu 189 provides visually tothe user:

-   -   Colour Path: this being a “trajectory” of the colour of the        digital element from a starting position “A” to a final position        “B” such that as will become evident in the following        description the colour of the digital element may vary according        to the position of the digital element along the “physical” path        across the Window 1000 or across the Canvas the user is working        upon where the Window 1000 represents that portion of the Canvas        currently being viewed.    -   Digital Element: representing an icon denoting the digital        element being manipulated and/or modified which as noted above        may be an image, an icon, text, etc.    -   Horizontal Path: representing the lateral displacement on the        Canvas of the digital element from the beginning of the path “A”        to the end of the path “B”.    -   Vertical Path: representing the vertical displacement on the        Canvas of the digital element from the beginning of the path “A”        to the end of the path “B”.    -   Easing: representing the velocity of modification and/or        manipulation on the Canvas of the digital element from the        beginning of the path “A” to the end of the path “B”.

Within embodiments of the invention the user may establish elements suchas Horizontal Path, Vertical Path and Easing, for example, byestablishing them through a menu, such as Path and Easing Menu 189,and/or through a haptic interface or user interface. For example, oneuser may be comfortable defining functions and/or shapes and/orgeometries within a menu with their associated parameters whilst anothermay be more comfortable defining these elements through their motion ofa stylus or tracking motion of their hand etc. In either scenario therepresentative elements may be manipulated by the user through a menu,such as Path and Easing Menu 189, or their actions. For example, a usermay play a portion of an item of digital content within which a digitalelement is modified and manipulated by the settings established by theuser. The user may adjust the settings through the menu or the GESGEAPmay be configured to take user input from a haptic interface or userinterface as control input to adjust the settings. Accordingly, theuser, as the path/easing are being “played” or rendered to the user, canmanipulate the path/easing aspects as it is rendered.

Now referring to FIG. 2 there are depict exemplary prior art first andsecond graphical user interface (GUIs) 200A and 200B for a userselecting an aspect of digital content to be added within a GESGEAPaccording to embodiments of the invention. First GUI 200A depicting whatis known as a colour hue wheel comprising a colour wheel (Wheel) 210 andred/green/blue (RGB) values (RGB Values) 220. A user may select a colourusing either Wheel 210 or RGB Values 220. Considering the Wheel 210 thenthe user through the first GUI 200A may rotate the wheel or move theSelector 240 to a different region such that the Hue region 230 adjuststo reflect the current portion of the spectrum being selected or viewed.The Hue region 230 providing arrange of hues from the currently selectedcolour established by Selector 240 (at right tip of Hue region 230 towhite (upper left tip) and black (bottom left tip). As the usermanipulates the Selector 240 (or rotates the Hue region 230) then theRGB values within RGB Values 220 adjust. If the user then selects a huewithin the Hue region 230 then the RGB Value 220 similarly adjusts.

In second GUI 200B the user is presented with a Hue region 260comprising a Slider 270 and Pointer 250. Accordingly, the user can movethe Hue region 260 to another region of the spectrum using Slider 270and manipulate within the hues of the Hue region 260 by moving thePointer 250. However, the user is also presented with Colour Region 250which may present a range of predefined colours to the user. A portionof these predefined colours may, for example, be defaults of theGESGEAP, another portion may be recently selected colours established bythe user within the GESGEAP, and a further portion may be defaultcolours established by the user within the GESGEAP or imported by theGESGEAP from one or more configuration files associated with the userwhich are accessible to the GESGEAP as well as other GESGEAPs allowingthe user's configurations/preferences etc. to be stored and retrieved.

However, in each instance of first GUI 200A and second GUI 200B andother such prior art GUIs for colour selection/setting the user selectsa single colour. Accordingly, the user selects a single colour toemploy, e.g. for a brush stroke, mark making tool, animation effect tobe added etc. Accordingly, if a user wishes, for example, a graphicalelement being added to digital content to vary from yellow to red overthe course of a second then the user with prior art GESGEAPs is requiredto define the graphical element in each frame within the final digitalcontent published that will be rendered in the final graphical contentand adjust the colour of this element within each frame to achieve thedesired effect. This is a time consuming task requiring that the usernot only perform the modification per frame but also understand how toadjust the colour per frame from their starting colour to the finalcolour. Accordingly, it would be beneficial to provide users with analternative GUI interface allowing them to define a colour trajectory orcolour path for a graphical element as a discrete element. This colourpath is then applied by the GESGEAP upon generating the digital contentsuch that the user can manipulate the position, duration, etc. of thegraphical element as discrete element of the digital content and theGESGEAP will automatically perform the necessary determinations togenerate the final frames of the published digital content containingthe graphical element.

It would be evident that the colour path may be stored in conjunctionwith the graphical element allowing the user to define a graphicalelement which can be used in multiple items of digital content withouthaving to regenerate it each time. Within a first item of content thestart position, end position, path taken within the digital content, andduration may be set to a set of first values which are different tothose within another item of digital content. The graphical element whenadded being handled, for example, upon a discrete layer of the GESGEAPso that the user can manage the graphical element discretely andenable/disable its rendering whilst they are working as well as withinthe final digital content. Accordingly, a user may generate a singleanimated segment for example and apply different graphical elementswhere each graphical element may be for a different language, differentbranding, etc. for example. Similarly, the graphical element may havedifferent durations within different published digital content such asan animated GIF, 30 second video, full streamed content, etc. forexample.

Accordingly, referring to FIG. 3 there are depicted first to fifthcolour spaces (COLSPCE) 300A to 300E respectively each providing acolour space representation for rendering to a user within a GESGEAP GUIaccording to embodiments of the invention. Considering, first COLSPCE300A then there is depicted a CIE 1931 xy chromaticity diagram (CIExy)310. These being all colours visible to a human. Accordingly, asdescribed with respect to first COLSPCE 400A in FIG. 4 a user may definea path within the colour space representing a colour path for agraphical element. Also rendered within CIExy 310 are first to fourthBoundaries 320 to 350 respectively, these comprising:

-   -   First Boundary 320 representing the colours defined by the        ProPhoto RGB (also known as Reference Output Medium Metric        (ROMM)) developed by Kodak™ which encompasses 90% of possible        surface colors in the CIE L*a*b* (CIELAB) color space, and 100%        of likely occurring real-world surface colors documented in        1980.    -   Second boundary 330 being those colours defined by the Adobe™        RGB (1998) which was designed by Adobe™ to encompass most of the        colors achievable on CMYK color printers but using RGB primary        colors on a device such as a computer display. The Adobe        RGB (1998) color space encompasses roughly 50% of the visible        colors specified by the CIELAB color space.    -   Third Boundary 340 being those defined by sRGB (standard RGB)        which is a color space created by HP™ and Microsoft™ in 1996 to        use on monitors, printers, and the Web which is standardized by        the International Electrotechnical Commission (IEC) as IEC        61966-2-1:1999.    -   Fourth Boundary 350 being those defined by the US Specifications        for Web Offset Publications (SWOP) CMYK which defines a        subtractive (rather than additive) colour model for use in        colour printing based upon the four ink plates (historically but        now also colour inkjet printers etc.) used in colour printing,        these being Cyan, Magenta, Yellow and Key (black).

Accordingly, the colour space accessible to a user may be defined by theselection of a colour space, e.g. ProPhotoRGB, Adobe™ RGB, sRGB, SWOPCMYK or others known to those of skill in the art, associated with thefinal digital content. For example, a user targeting a final printeddocument from the digital content may select SWOP CMYK or another colourspace defined for printing whilst another targeting stream of contentupon the Web (Internet) may employ sRGB. It would evident that withinembodiments of the invention a colour path may be defined within theCIExy 310, for example, and automatically scaled to an appropriateboundary, e.g. first to fourth Boundary 320 to 350, based upon adefinition of the final digital content. Accordingly, a user maygenerate a single item of digital content with a digital elementexploiting a colour path according to an embodiment of the inventionwhich is automatically scaled if they select a “print” output formatrather than a “stream” or “web” output format, for example. The user mayelect to use the automatically defined colour path resulting from thisscaling to the defined boundary or that may adjust each individuallyonce generated to modify each discretely. Optionally, a user may specifya different custom boundary rather than selecting one according to astandard.

Second to fifth COLSPCE 300B to 300E represent Hue, Saturation,Lightness (HSL) or Hue, Saturation, Value (HSV) representations of theRGB colour model which align more with the manner in which human visionperceives colour making attributes. HSL models the way different paintsmix together to create colour in the real world whilst HSV modelsrepresent how colours appear under illumination (light). These being:

-   -   Second COLSPCE 300B depicts HSL as a cylindrical representation        with hue being the angular dimension.    -   Third COLSPCE 300C depicts HSV as a cylindrical representation        with hue being the angular dimension.    -   Fourth COLSPCE 300D depicts HSL where hue is plotted against        chroma (range of RGB values) rather than saturation resulting in        a biconic representation with hue being the angular dimension,        chroma radial distance, and lightness vertical.    -   Fifth COLSPCE 300E depicts HSV where hue is plotted against        chroma (range of RGB values) rather than saturation resulting in        a conic representation with hue being the angular dimension,        chroma radial distance, and value vertical.

It would be evident that other representations of colour space may beemployed within embodiments of the invention without departing from thescope of the invention. Accordingly, referring to FIG. 4 and first tofourth COLSPCE 400A to 400D respectively there are depicted exemplaryGUI elements for a user to establish a colour path for manipulatingand/or modifying a digital element within a GESGEAP GUI according toembodiments of the invention. Accordingly, referring to first COLSPCE400A the user is presented with a CIE x y colour space such as describedabove in respect of CIExy 310 in FIG. 3 . Accordingly, the user haspresented the CIE x y colour space without any modifications to reflectselection of as colour space such as described above in respect of FIG.3 . Within this the user can establish first to fourth colour paths(COLPATHs) 410A to 440A respectively wherein each represents a colourtrajectory or path to be applied to a graphical element according to thetimeline for the duration of the graphical element. Optionally, the usermay, as will be discussed below, establish a colour easing by applyingan easing to the COLPATH such that the “velocity” at which the colourtransitions defined by the COLPATH are applied to the graphical elementmay be non-linear rather than linearly applied for the duration of thegraphical element's visibility within the digital content. Optionally,within other embodiments of the invention a GUI and/or control settingsof the GESGEAP may allow the user to define the path and apply itmultiple times for the duration of the graphical element. For example,fourth COLPATH 440A by virtue of being a closed loop may be applied 2,3, or more times without apparent discontinuity whilst second COLPATH420A may be repeated but with discontinuity as the start/end colours aredifferent.

As will become evident with respect to the description below the usercan specify the COLPATH discretely or the COLPATH and its associatedcolour easing (COLEASE) through a variety of mechanisms within the GUIand/or GESGEAP. For example, the user may:

-   -   Take a defined function, e.g. closed loop and adjust its        position and dimensions to generate, for example fourth COLPATH        440A. First and second COLPATHs 410A and 420A may be similarly        defined by sinusoidal and straight line functions.    -   Establish the COLPATH through a user interface, e.g. third        COLPATH 430A, wherein the user may draw the path or the GESGEAP        may generate the COLPATH by tracking the user's action with a        haptic interface or user interface. For example, the user may        trace the COLPATH with a stylus onto a rendered colour space        within a GUI which may be popped up larger than those depicted        in FIG. 1D to allow enhanced resolution of placement. It would        be evident that the COLEASE may be concurrently acquired based        upon a gesture characteristic of the user's gesture with the        user interface or haptic interface. For example, the user's        speed of motion of drawing the path is applied directly as the        colour easing or a pressure of the user upon a touch screen        interface, angle of a stylus relative to display, etc. may all        be employed to concurrently define the colour easing together        with the colour path.    -   Exploit a predefined function that defines not only the        geometry, e.g. a loop, straight line, Gaussian, etc. or a        mathematical function allowing the user to define its location.    -   Exploit a predefined function that defines not only the        geometry, e.g. a loop, straight line, Gaussian, etc. or a        mathematical function, but also defines its location/parameters.

Second COLSPCE 400B depicts a similar scenario as first COLSPCE 400A butthe user has defined the colour space as being Adobe™ RGB, see FIG. 3 ,wherein the colour space is limited to those defined by the selectedcolour space. As discussed above previously defined colour paths/coloureasing may be automatically scaled to reflect selection of a colourspace, thereby resulting in fifth to eighth COLPATHs 410B to 440B or theuser may be prompted to adjust a previously selected path such as thatdepicted with ninth COLPATH 495 where it is evident prior to adjustmentthat a portion of the selected colour path lies outside the range of thecurrently defined colour space when such previously established colourpaths are not automatically adjusted to a new colour space.

Third COLSPCE 400C depicts a HSV conical rendering of a colour spacewhere the user has established a first 3D COLPATH 450. In third COLSPCE400C the colour path is three dimensional rather than two dimensionalwith the CIExy colour spaces within first and second COLSPCE 400A and400B, respectively. Accordingly, the user may be required to enter thisin a more complex manner through a GUI or the user interface may supportthree dimensional tracking/input such that, for example, the tip of astylus is tracked in three-dimensions (3D) to define thethree-dimensional colour path. Optionally, where the GESGEAP supportsaugmented reality or virtual reality then the user may be presented witha virtual 3D rendering of the colour space thereby enhancing theirability to define and/or manipulate the colour path and/or coloureasing. Such augmented reality and/or virtual reality interfaces may beemployed with other 3D colour space renderings such as the cube colourspace depicted in fourth COLSPCE 400D and wireline colour spacerendering in fifth COLSPCE 400E. Accordingly, within fourth COLSPCE 400Dthe rendering of the colour path may vary width so that when renderedupon the 2D GUI of the GESGEAP the user has the perception of depth whenemploying non-augmented reality/non-virtual reality interfaces. Thisbeing simply depicted by first and third COLPATH sections 460A and 460Cbeing of narrower width than second section 460B. It would be evidentthat within a GESGEAP according to embodiments of the invention thatsuch a path width variation to represent depth ma y be continuous oremploy a large number of segments rather than the limited depiction inFIG. 41 .

Second 3D COLPATH 470 in fifth COLSPCE 400E being rendered upon a 3Dwireline 480. This may allow the user to define and visualize a colourpath independent of a colour space so that their construction of acomplex path may be established prior to mapping the path onto a portionof a colour space. Such a path may be stored as a defined function whichis then mapped to a colour space, such as those depicted in FIGS. 3 and4 by the user adding it to a colour space, e.g. by dragging or dropping,importing etc.

Within FIGS. 3 and 4 the colour path has been described with respect toa user defining the colour path within a colour space. However, withinembodiments of the invention a colour path may be defined, such as forexample using fifth COLSPCE 400E wherein the actual mapping of thedefined colour path, second 3D COLPAT 470, for example, is defined independence upon another parameter of the digital content and/or thedigital element. For example, a digital element may have been definedwith a loop of duration two seconds covering a predetermined portion ofa colour space. The absolute position of the loop within the colourspace may be defined in dependence upon, for example, a current elapsedtime of the digital content the digital element is within and a propertyof the underlying digital content to which the digital element is anoverlay, e.g. its brightness, magnitude of a colour component (e.g. red,green, or blue for example). Alternatively, the position of the loopupon the colour space may be defined, in the example of a CIExy colourspace which requires only two parameters to define a centre of the loop(i.e. x and y) by the magnitude of two colour components (e.g. red andgreen), the inverse of a pair of colour components (e.g. green andblue), a magnitude of treble and bass frequencies within associatedaudio content. Accordingly, using a CIExy colour space the user mayassociate position of a defined colour path based upon two parameters ofthe digital content within which the digital element is placed.Alternatively, the colour applied to a digital element may be definedsolely in dependence upon a pair of parameters such that the colour pathis defined by these two parameters rather than combining a loop/path ofdefined structure and moving it within the colour space. It would beevident that with other colour spaces such as the 3D colour spaces inFIGS. 3 and 4 that the colour path may be defined solely by or aposition of a colour path may be defined by, three parametersestablished in dependence upon the underlying digital content.

Within alternate embodiments of the invention the easing applied to acolour path may be established in dependence upon mapping one or moreparameters of the digital content to the easing. For example, a colourpath may be defined as a circular loop within a CIExy colour spacewherein the absolute position, range etc. of the colour path aredefined. However, the easing (equivalent to a velocity or speed oftraversing the path) may be linked to a characteristic of the digitalcontent such that as this characteristic or characteristics varies theneasing applied to the colour path changes. For example, the easing maybe directly dependent or inversely dependent upon a tempo of an audiotrack forming part of the digital content, or a measure of overallbrightness of the digital content, a colour of a region defined withinthe digital content, a brightness of a region defined within the digitalcontent etc. In this manner variations to the underlying digital contentresult in changes to the colour path and/or colour easing. It would beevident that a user may define a function to establish the adjustmentfrom a single parameter of the underlying digital content or can extendthis to more complex functions employing two, three or more parametersof the underlying digital content to impact the colour path and/oreasing applied to the digital element.

Within the description above and below specific exclusion of the conceptof frames and/or keyframes as known to one of skill in the art withrespect to digital video software applications and/or digital animationsoftware applications has been made. This is because in theirgeneralised form the embodiments of the invention may defined such thatthe effects are established and then mapped to the digital content.Accordingly, a digital element and its colour path/easing etc. may beestablished within the digital content and then this is mapped to“frames” or “key frames” or other specific time based points within thefinal generated digital content. In this manner, the digital element maybe mapped to different frame per second output formats, e.g. film at 24frames per second (FPS), video transmission at 59.94 FPS, newer videostandards at 120, 240 or 300 FPS, as well as newer film formats such as48 FPS and 60 FPS. Such abstraction allowing a digital element to bedefined and employed at different durations, e.g. 1 second, 5 seconds,1.25 seconds, etc. However, it would be evident to one of skill in theart that the embodiments of the invention are compatible with suchtechniques as frames and/or keyframes.

Accordingly, a user may establish a preferred mode of operation, e.g.keyframe or relative (as the inventors refer to it since the placementof the digital element is not aligned to specific frames or keyframes).With keyframe based deployment of embodiments of the invention theduration of the digital element is aligned to the start and endkeyframes whereas with relative the user can simply move/scale withoutconsideration of frames and/or keyframes. As will become evident throughdescriptions of embodiments of the invention relative modes of operationprovide increased flexibility and usability.

Referring to FIG. 5 depicts an exemplary path being established formanipulating and/or modifying a digital element within a GESGEAP GUIaccording to a methodology employing keyframes. Referring to firstTimeline 510 in first Image 500A there is depicted a timelinerepresentation of digital content wherein a first keyframe (K1) and asecond keyframe (K2) are defined. Accordingly, referring to second Image500A the user by moving to the first time point, T=T1, defines theposition of the Element 595 at the first keyframe K1 as first position580, defined as [X1,Y1,Z1] wherein X1, Y1 and Z1 are the horizontalposition, vertical position, and depth of the Element 595 within therendered digital content. The user now moves to a second time point,T=T2, and defines the second keyframe, K2, with coordinates [X2,Y2,Z2]to define the second position 590. Accordingly, the software executesand defines the first Path 550 for Element 595 which is a linear path.Accordingly, the physical position is linearly interpolated between K1and K2 where the position [X3,Y3,Z3] at T=T3 is linearly interpolated asgiven by Equations (1) to (3) respectively.X3=X1+(X2−X1)*(T3−T1)/(T2−T1)  (1)Y3=Y1+(Y2−Y1)*(T3−T1)/(T2−T1)  (2)Z3=Z1+(Z2−Z1)*(T3−T1)/(T2−T1)  (3)

However, as noted previously the colours of the element are defined ateach keyframe using the tools such as defined in FIG. 2 . Accordingly,within the prior art the shape of this path cannot be changed unlessadditional keyframes are created between K1 and K2, namely K3, . . . ,KN wherein the GESGEAP still treats the motion between successivekeyframes as being a linear interpolation. Accordingly, generated a pathsuch as second Path 550 in second Image 500B requires multiple keyframesto establish a smooth curve which is really a piece-wise linearconstruct.

In contrast, the user within a GESGEAP according to an embodiment of theinvention may define a physical path by defining the first and secondpositions 580 and 590 respectively, and then defining a function for thetransition. Considering second Path 550 this may be an exponential decayfunction, according to a function given by Equation (4) where the usercan specify the decay constant, λ, where the quantity N is position forexample and t is the time elapsed between the times for the pathestablished. Hence, the user can define a path and then apply it to adigital element within the digital content. The resulting path beingdefined therefore by Equation (5).dN/dt=−λN  (4)N(t)=N0exp(−λt)  (5)

Hence, as λ increases the exponential decay becomes sharper. The usercan then define adjust the start time, end time with ease and theGESGEAP performs all of the necessary interpolations according to thefunction defined or path set by the user. Accordingly, continuing withthe example in second Image 500B this exponential decay in position forthe physical path can be set as parameter as depicted in second Timeline520 where the exponential decay function 525 is applied to Parameter 1(e.g. position). However, the user can now assign this function to otherparameters such as depicted in third Timeline 530 where the exponentialdecay function 535 is applied to Parameters 1 to 3 (e.g. position,colour, brightness for example). Accordingly, the user such as describedabove with respect to the colour path and easing may establish complextransitions for the digital element. Alternatively, as depicted infourth Timeline 540 the user may establish different functions, first tothird Functions 545A to 545C, for Parameter 1, Parameter 2, andParameter 3. For example, Parameter 1 may be position with exponentialdecay, Parameter 2 may be colour with linear variation, and Parameter 3may be brightness with sinusoidal increase. It would be evident that awide range of mathematical functions may be employed for defining a pathfor each parameter of the digital element. Accordingly, withinembodiments each parameter, such as Parameter 1, Parameter 2 andParameter 3 can have a path associated with it, a parameter path. Suchpaths may for example, include but not be limited to, a positional path,a colour path, a size path, an aspect ratio path, a brightness path, anda rotation path.

Further, whilst within embodiment of the invention the paths are definedwith respect to graphical elements it would be evident that theembodiments of the invention may be applied to other elements ofelectronic content associated with an item of digital content, e.g. anaudio track may have a volume driven by a functionally defined path or apath defined by another characteristic of the digital content. Forexample, the sound level may vary according to overall image brightness,to overall colour tone etc.

Within the embodiments depicted in FIG. 5 the physical path is depictedsuch that [X2,Y2,Z2] is different than [X1,Y1,Z1]. However, it would beevident to one of the skill in the art that this does have to be true asa path for position or other parameters may, as described above withrespect to colour path, be closed in that the path closes back onitself. This path may be defined by a regular polygon, e.g. triangle,square, rectangle, pentagon, circle, ellipse etc. but it may be anirregular polygon or complex shape that closes back to an originalstarting position. It would be evident that within other embodiments ofthe invention a path may be defined by a one dimensional (1D) function,a two dimensional (2D) function, a 3D function, or an N-dimensionalfunction.

Referring to FIG. 5 and second Image 500B then the Element 595, i.e. theword “TITLE moves” along the second Path 560 which has been definedwithin embodiments of the invention by a path representing it position,i.e. a positional path or XYZ path. Absent any additional informationnothing defines how it moves along such the second Path with time, e.g.from T=T1 to T=T2. An initial assumption is that it moves linearly alongthat path with time. If the length of the path is L, in pixels or screenpercentage for example, then the position of Element 595 at a time T3,T1<T3<T2, would be a linear interpolation along that length L. However,nothing limits this to being the case. Accordingly, the easing asemployed by the inventor relates to defining the evolution of theparameter over the duration of the transition/path associated with thedigital element. This may be visualized as a speed at which thetransition progresses. As noted above in respect of colour path andeasing applied to the colour path (referred to as colour easing) thiscan be defined by a time associated with the duration of the digitalelement within the digital content or it may be defined as beingdependent upon one or more other parameters associated with the digitalelement and/or the digital content with which the digital element isassociated. Accordingly, easing or the ease applied to a parameter isitself another path but one relating to a speed of transition, i.e.velocity of the parameter changing. Optionally, the easing may beapplied directly or applied through the application of a function.

Now returning to easing then this has been described above with respectto colour paths as being a speed of evolution of the parameter along thepath. FIG. 6 depicts an application of easing to a path established formanipulating and/or modifying a digital element within a GESGEAP GUIaccording to embodiments of the invention to aid a reader'svisualization of the concept. Accordingly, considering first Image 600Ain FIG. 6 there is plotted a first Trace 610A representing a linearvariation of Parameter 2 (e.g. position, colour etc.) versus Parameter 1(e.g. time for position or position for colour etc.). As depicted in theright hand graph the first Easing 610B for this Trace 610A is constant.However, second Trace 620A represents a non-linear variation ofParameter 2 versus Parameter 1. Accordingly, the second Easing 620Bdepicted on the right hand graph shows that initially the easing is lowbefore increasing to a higher value than the simple linear model andthen slows again. Accordingly, second Trace 620A may be viewed as theproduct of first Trace 610A with second Easing 620B. Accordingly, thepath of a digital element may be defined, e.g. positional path or colourpath, but by varying the easing, e.g. positional easing or coloureasing, the resulting rendered visualization varies.

Whilst first image 600A in the left hand graph depicts a simple easedpath and a linear (which can be viewed as non-eased or as one havingconstant easing. If now the digital element duration, e.g. Parameter 1,is reduced/increased then the magnitudes of the first Easing 610B andsecond Easing 620B vary to ensure that the physical path is traversedwithin the modified timeframe.

However, it would be evident from second Image 600B that more complexbehaviours may be established rather than simple formulaic behaviours.Accordingly, there are depicted in the left hand graph the linear path,first Trace 610A, the eased path of first Image 600A, second Trace 620A,and a more complex path, third Trace 630. Accordingly, the digitalelement position where Parameter 2 is position first moves along thepath towards its final position, then backtracks along that path, andthen moves forward to its final position. If this is then plotted asEasing 630B in right hand graph then it begins initially positive,before reducing to zero, going negative before reversing again and goingpositive. Accordingly, in these instances the easing may be viewed as aderivative representing a rate of change of Parameter 2 as a function ofParameter 1. Within other embodiments of the invention the path may bedefined, and the easing represents the rate of change which is onlypositive rather than negative. Accordingly, a simple path with complexeasing may provide a similar visualization as a more complex pathdefinition with simple easing. Alternatively, both the path and easingmay be complex functions.

Accordingly, it would be evident that the characteristics of a digitalelement may be defined by a path for a characteristic and an easing ofthe characteristic. For example, if the characteristic is a simplepositional shift defined by a linear path, then the easing may oscillatepositive and negative such that the resulting position of the digitalelement oscillates along the linear path. If the positional shift is nowa more complex function, then the oscillating easing results in thedigital element oscillating in a more complex manner. Within embodimentsof the invention a path and easing may be defined with a ratio equal toone (i.e. the path and easing are each executed once for the durationthat the digital element is present) or the ratio may be other than onesuch that for example the easing is performed N times for a single pathover the duration that the digital element is present or that the easingis performed N times for M paths. This allows relatively simply path andeasing definitions to be employed to generate more complex effects onthe digital element. Further, as the easing (for example) may be acharacteristic established in dependence upon another parameter of thedigital content then very complex behaviours can be established.

In a similar manner if the path is brightness, then an easingoscillating positive and negative results in the digital elementbrightness varying. This can be sinusoidal of the easing is sinusoidal,blinking if the easing is a square wave, etc. Accordingly, repeating asingle square wave easing N times results in N blinks. If the durationof an easing cycle is now established in dependence upon the underlyingdigital content, then the blinking will vary as the underlying digitalimage changes.

Generally speaking therefore a path defines a variation of acharacteristic of a digital element in a given space, e.g. a colour pathin colour space, a physical path on the canvas (virtual representationof physical space). In some instances to ease establishment of the pathand/or easing where the rendering of a visualization of the “space” theuser is working within is difficult then the space may be broken downinto a series of more manageable elements. Alternatively, a user maydefine a virtual space, e.g. a 3D space with intensity as one axis, sizeof digital element as the second axis, and rotation of the digitalelement with respect to an axis perpendicular to the canvas as the thirdaxis. The user may elect to render this as a spherical space, oralternatively, a conical space, biconic space, cubic space, apolyhedron, or a spheroid for example. Accordingly, motion of a userinterface element allows the user to establish a path within this spacewhich is then applied to the digital element. Within embodiments of theinvention as the user makes the gesture or gestures to generate thispath then the GESGEAP may be determining one or more characteristics ofthe user's gesture(s) as defined by the user to establish the ease orthese may be derived automatically. Accordingly, if the user selectsautomatic then if they gesture rapidly this is automatically a highereasing than when they gesture slowly. However, the user may selectpressure so that even though the entire gesture is relatively constantin motion made by the user the varying pressure they apply results inthe easing being varied accordingly.

In some instances, a user may generate multiple paths and multipleeasings which are applied to the digital element. Optionally, the usermay elect to break down an N-dimensional space to a series of 2D spacesfor generating the path and easing as they can conceptualize andvisualize this easier. Optionally, they may break the N-dimensionalspace to N 1D spaces or a series of 3D spaces. As noted above a path maybe a function of another path. Hence, for example, brightness may be afunction of position whilst position is itself a function of anunderlying acoustic element of the digital content. Accordingly, acommon digital animation rendered with two different acoustic tracswould yield different animations.

Within the description above the inventor has stated that the conceptsof path and easing may be employed in conjunction with keyframes, orthey may be independent of them and viewed as replacement of keyframes.With keyframes, behaviors are described at the frame to frame level,with some “vectorization” done through simple linear interpolation, andlimited easing (i.e. limited to rate of change of position). However,the concepts of paths and easing as established by the inventor may beviewed as a vectorization of all behaviors, and the behaviors are thenapplied to a discrete digital element or set of digital elementspositioned within the digital content where the placement, duration etc.of the digital element is not defined through keyframes but may beindependent of them or aligned with another aspect of the digitalcontent. For example, a digital element may be linked to digital audioelement such that movement of the digital audio element automaticallymoves the digital element or vice-versa.

As noted above without access to embodiments of the invention if avideographer wants to present an effect on screen, such as the movementof an object (e.g. title, mask, etc.) with accuracy and detail then thevideographer has to “paint” this effect on a frame by frame basis. Thelimited exceptions are linear interpolations and pre-defined (or asknown in the industry-pre-canned) easing or effects (e.g. make theletters of a title move in a circle for example). Whilst easing theworkload on the videographer these pre-canned approaches limit thevideographer to simple prepared effects and their parameterizedvariations. These pre-canned effects being generated originally by thevery tedious the process the videographer seeks to avoid having to dothemselves.

Accordingly, the embodiments of the invention allow the videographer todefine an effect through one or more paths and one or more easings wherethese can be user specified or defined through mathematical functionsand curves. In order to simplify the processing embodiments of theinvention may approximate a curve with a polynomial representation, suchas Bezier curves. Bezier curves are well known, very stable andreproduceable, and computationally efficient. However, full mathematicaldefinitions may be employed where computational resources support them,for example. Accordingly, in scenarios such as mobile devices the usermay be limited to approximations whilst a desktop implementation orremote session based implementation may support full mathematicalfunctions. Accordingly, the path(s) and easing(s) can be definedindependently of the digital content, frames etc. allowing them to beembedded and employed independently of framerates for example. A finalrendered output may establish a framerate in some instances.

Referring to FIG. 7 there is depicted an exemplary sequence for a useradding a digital path and easing for manipulating and/or modifying adigital element within a GESGEAP GUI according to embodiments of theinvention. For ease of visualization of the process with a Figure theexemplary sequence is depicted with respect to the spatial movement of adigital element. Accordingly, referring to FIG. 7 there are depictedfirst to fifth Images 700A to 700E, respectively. These comprising:

First Image 700A where the user has moved to a first point within theitem of digital content and established a Start Position 710 for thedigital element to be manipulated and/or modified.

Second Image 700B where the user has moved to a second point within theitem of digital content and established an End Position 720 for thedigital element being manipulated and/or modified.

Third Image 700C wherein a GUI element of the GESGEAP now displaysinformation such as the X, Y and Z coordinates of the End Position 720where X is associated with the point within the digital content at whichthe End Position 720 is defined (e.g. a time stamp for example) and Yand Z are the spatial coordinates on the canvas. Optionally, X,Y,Zwithin another embodiment of the invention may be 3D spatial coordinatesand a fourth coordinate T may be added to define the “time” aspectwithin the digital content. The vertical redline denotes that thetimebase is at the point where the End Position 720 is defined which isdenoted relative to each coordinate as a “diamond.” The other set ofdiamonds to the left of these with the redline being those associatedwith the point at which the Start Position 710 was defined. Within thisexemplary sequence the images presented may be familiar to a user asreminiscent of keyframe definition within a GESGEAP but the timebase isthat of the digital content and/or GESGEAP rather than keyframes. Withinanother embodiment of the invention the path may be defined and depictedwithin the digital content as the user moves through it where theydefine the start position (or this may be automatically established inother embodiments) and adjusts the timeline (duration) etc.

Fourth Image 700D wherein the user indicates that they wish to define a3D path for the digital content being added, as depicted this is bymarking the space between the start indicators and end indicators with aBlock 730. Optionally, the Block 730 may be associated with a singleaxis or a pair of axes.

Fifth Image 700E the GESGEAP renders to the user an initial Linear Path740 between the Start Position 710 and End Position 720. The user maynow define the path through user input, e.g. through a user interfacesuch as a stylus upon a tablet or touch sensitive display for example orthrough definition of a function. For example, the user selects afunction which generates Path 750. The user can adjust the Path 750 bymodifying points within their entered curve or through varyingparameters of the selected function or even the function itself. At thispoint the user makes a GUI entry denoting that they have finishedmodifying the path. At the same time as entering the path or in adiscrete separate step the user can define the easing for this path.

Once, the user denotes that they have finished generating the pathand/or easing the GESGEAP stores the path and/or easing with the digitalelement so that these aspects are applied when the GESGEAP renders theelectronic content containing the digital element to the user.Optionally, the GESGEAP may allow the user to save the digital elementwith its path and/or easing as an item for subsequent retrieval andinsertion into another item of digital content. When storing the digitalelement the GESGEAP may store the full mathematical functions, ifemployed, whilst it may employ simple formulaic descriptions of the pathand/or easing when rendering during generation rather than in finalrendering for export/saving/printing etc.

Within embodiments of the invention the GESGEAP may provide defaults toa user such that, for example, easing applied to a physical path such asPath 750 in fifth Image 700E in FIG. 7 may be constant ease, constantease on one axis, constant ease on another axis, sinusoidal ease so thatit slows down at the beginning and end with faster motion in the middleetc. Within GESGEAPs according to embodiments of the invention userstoday can define digital elements and digital content on multiple layerswhich they can manipulate/manage discretely prior to defining whichlayers are combined/merged to generate the final output. However,embodiments of the invention may be employed within other GESGEAPs suchas Microsoft™ PowerPoint™ for example which does not provide these butallows for direct discrete management of elements. In this example thefinal output may be a series of slides/images rather than a videosegment for example.

Now referring to FIG. 8 there is depicted an exemplary process Flow 800for establishing a digital path and easing for manipulating and/ormodifying a digital element within a GESGEAP GUI according toembodiments of the invention. As depicted Flow 800 comprises a firstSub-Flow 800A and a second Sub-Flow 800B. First Sub-Flow 800A comprisesfirst to ninth steps 805 to 845 respectively, these comprising:

-   -   First step 805 wherein the user selects a characteristic of a        digital element, e.g. an item or items on one or more layers of        a GESGEAP according to an embodiment of the invention before        proceeding to second step 810. Within the following description        the characteristic is presumed to be colour, but it would be        evident that any other definable/variable characteristic of a        digital element may be selected by a user. Optionally, the user        may select to set multiple characteristics concurrently.    -   Second step 810 where the user selects a path definition entry        type, for example, pre-defined function, user defined or        mathematical definition wherein upon selection of the        appropriate option the process proceeds to one of third, fourth        and fifth steps 815 to 825, respectively.    -   Third step 815 wherein the user has selected a predefined        function for the path type wherein the user may select, for        example, from a menu of functions and set one or more parameters        associated with the function selected. For example, the function        may be a circular path wherein the user is rendered a colour        space representation, e.g. CIE x y such as depicted in first        Image 400A in FIG. 4 , together with the circular path such that        they may, for example, set the central point of the colour path        and its radius. If the user prefers a different colour space        representation, then they may define this, and the GUI will        shift allowing them position/dimension the function wherein once        completed the process proceeds to sixth step 830.    -   Fourth step 820 wherein the user has selected a user defined        path and accordingly the user is presented within a GUI with a        colour space representation allowing them to define the path to        be used wherein once completed the process proceeds to sixth        step 830.    -   Fifth step 825 wherein the user has selected a mathematical        function and accordingly the user is presented with a GUI        comprising a colour space representation together with menu for        the mathematical function, settings for the selected        mathematical function and upon their entering of these        parameters for a selected function is presented with a rendering        of the colour path. Again, once completed the process proceeds        to sixth step 830.    -   Sixth step 830 wherein the selects an easing definition entry        type, for example, pre-defined function, user defined or        mathematical definition wherein upon selection of the        appropriate option the process proceeds to one of seventh,        eighth and ninth steps 835 to 845, respectively.    -   Seventh step 835 wherein the user has selected a predefined        function for the easing type wherein the user may select, for        example, from a menu of functions and set one or more parameters        associated with the function selected. For example, the easing        function may be Gaussian such that the motion starts slowly,        gets faster to the mid-point, and then slows down to the end.        The user may be able to move the “peak” thereby making the        Gaussian asymmetric so that the motions before/after the peak        are different durations rather than equal for example. Once        completed the process proceeds to second Sub-Flow 800B.    -   Eighth step 840 wherein the user has selected a user defined        path and accordingly the user is presented within a GUI allowing        them to define the easing to be used wherein once completed the        process proceeds to sixth step 830. For example, this may be by        them defining a profile through a user interface. Once completed        the process proceeds to second Sub-Flow 800B.    -   Ninth step 845 wherein the user has selected a mathematical        function and accordingly the user is presented with a GUI        comprising, for example, a menu for the mathematical function,        settings for the selected mathematical function and upon their        entering of these parameters for a selected function is        presented with a rendering of the easing. Again, once completed        the process proceeds to second Sub-Flow 800B.

It would be evident that first Sub-Flow 800A may be repeated formultiple characteristics of the digital element where the user wishes toset these individually rather than concurrently with the same pathtype/easing. Accordingly, additional steps may be provided to allow formultiple characteristics to be set before the process proceeds to secondSub-Flow 800B. Second Sub-Flow 800B comprises tenth to sixteenth steps850 to 880 respectively, these comprising:

Tenth step 850 wherein the user defines how they will select a startpoint for the digital element within the digital content and/or when tostart applying the path/easing to the characteristic of the digitalelement. Within this description it is implied that the start/stop ofthe digital element within the digital content are also the start andstop of the path/easing. However, it would be evident that this may notbe the case wherein the user can define the path/ease as applying over aportion of the duration of the digital element rather than having tocreate a path/ease that has defined constant start/stop portionbefore/after the path/ease are applied. Within the example presented insecond Sub-Flow 800B the user can define a pre-defined point or a userdefined point wherein the second Sub-Flow 800B proceeds to eleventh step855 or twelfth step 860, respectively.

Eleventh step 855 wherein the user has selected a pre-defined point suchthat, for example, the user defines it as the start of the digitalcontent, to be aligned with another item of digital content, etc. sothat the GESGEAP establishes the start point based upon the user'sselection of pre-defined point without them having to actually specifythat point in time themselves. The second Sub-Flow 800B then proceeds tothirteenth step 865.

Twelfth step 860 wherein the user defines the start point themselveswithout reference to other defined points within the digital content.The second Sub-Flow 800B then proceeds to thirteenth step 865.

Thirteenth step 865 wherein the user defines how they will select astart point for the digital element within the digital content and/orwhen to start applying the path/easing to the characteristic of thedigital element. Within the example presented in second Sub-Flow 800Bthe user can define a pre-defined point or a user defined point whereinthe second Sub-Flow 800B proceeds to fourteen 870 or fifteenth step 875,respectively.

Fourteenth step 870 wherein the user has selected a pre-defined pointsuch that, for example, the user defines it as the end of the digitalcontent, to be aligned with an end of another item of digital content,etc. so that the GESGEAP establishes the end point based upon the user'sselection of pre-defined point without them having to actually specifythat point in time themselves. The second Sub-Flow 800B then proceeds tosixteenth step 880.

Fifteenth step 875 wherein the user defines the end point themselveswithout reference to other defined points within the digital content.The second Sub-Flow 800B then proceeds to sixteenth step 880.

Sixteenth step 880 wherein the GESGEAP stores the start point, endpoint, data relating to the digital element (e.g. a resource locatorpointing to it rather than embedding it into the digital content), andthe data for the path/ease to be applied to the digital element. It alsoapplies them to any current digital content loaded. Optionally, this maybe encapsulated as a pre-defined “template” allowing the user toretrieve and insert the template into other digital content withouthaving to regenerate the path/ease etc.

Optionally, first and second Sub-Flows 800A and 800B may be presented tothe user in reverse such that the user defines the start/end etc. withinthe digital content rather than the path type/easing of a characteristicor characteristics. Alternatively, these may be interleaved in differentorders according to a preference of the user or default of the systemsuch that for example the user defines the start, defines the path,defines the end, and then defines the easing. Within other embodimentsof the invention the user may define that the path is fixed in respectof a characteristic of the digital content, e.g. time such that the useronly needs to define when the digital element is to initially appear orend and the GESGEAP defines the end/start accordingly. Otherwise theGESGEAP scales the path to meet the defined start/end points.

Referring to FIG. 9 there is depicted an exemplary process Flow 900 forestablishing a digital path and easing for manipulating and/or modifyinga digital element within a GESGEAP GUI according to embodiments of theinvention. As depicted Flow 900 comprises a first Sub-Flow 900A andsecond Sub-Flow 900B. First Sub-Flow 900A comprises the same steps asfirst Sub-Flow 800A in FIG. 8 such that the user defines a path to beapplied to a characteristic of a digital element and then an easing tobe applied to the path.

Second Sub-Flow 900B as depicted comprises first to eleventh steps 905to 955, respectively. These steps comprising:

-   -   First step 905 wherein after execution of first Sub-Flow 900A a        counter is initialized, N=1.    -   Second step 910 wherein the user defines whether they will        select a point within the digital content to anchor the digital        element to, e.g. a start point or an end point, by either user        input or a pre-defined function of the GESGEAP wherein the        process accordingly proceeds to third or fourth steps 915 and        920.    -   Third step 915 wherein the user has selected a pre-defined point        such that, for example, the user defines it as the start of the        digital content, to be aligned with another item of digital        content, etc. so that the GESGEAP establishes the start point        based upon the user's selection of pre-defined point without        them having to actually specify that point in time themselves.        The second Sub-Flow 900B then proceeds to fifth step 925.    -   Fourth step 920 wherein the user defines the point themselves        without reference to other defined points within the digital        content. The second Sub-Flow 900B then proceeds to fifth step        925.    -   Fifth step 925 wherein a determination is made as to whether the        user has finished entering points with respect to the digital        element wherein upon a positive determination the second        Sub-Flow 900B proceeds to seventh step 935 otherwise it proceeds        to sixth step 930.    -   Sixth step 930 wherein the counter is incremented and the second        Sub-Flow 900B loops back to second step 910.    -   Seventh step 935 wherein the user determines whether to modify        any of the points entered through first to sixth steps 905 to        930, respectively. Upon a negative determination the process        proceeds to eleventh step 955 wherein the GESGEAP applies the        path, easing and placement of the digital element otherwise the        process seeks user input whether they wish to define a        modification to a point by user input or a pre-defined function        of the GESGEAP wherein the process accordingly proceeds to        eighth or ninth steps 940 and 945.    -   Eighth step 940 wherein the user has selected to modify the        previously established point with a pre-defined function such        that, for example, the user defines it as the start of the        digital content, to be aligned with another item of digital        content, with another digital element, with a specific        combination of characteristics of the digital content etc. so        that the GESGEAP establishes the modified point based upon the        user's selection without them having to actually specify that        point in time themselves. The second Sub-Flow 900B then proceeds        to tenth step 950.    -   Ninth step 945 wherein the user defines the modification        location themselves without reference to other defined points        within the digital content. The second Sub-Flow 900B then        proceeds to tenth step 925.    -   Tenth step 950 wherein a determination is made as to whether the        user has finished modifying points with respect to the digital        element wherein upon a positive determination the second        Sub-Flow 900B proceeds to eleventh step 955 otherwise it        proceeds back to seventh step 935.    -   Eleventh step 955 wherein the GESGEAP applies the path, easing        and placement of the digital element.

Accordingly, Flow 900 may be employed to apply a digital element inmultiple locations within an item of digital content either within asmall period of the digital content or distributed over the digitalcontent. For example, a digital element may represent a flashing elementwhich is applied at multiple spatial and temporal locations within thedigital content so that the user can manipulate the digital elementsonce they have been applied. For example, the digital element may beinitially applied as a “particle” of a particle brush such that theGESGEAP initially establishes the locations of the digital element froma brush stroke of the user where the “flashing” is defined through thepath/easing established in the first Sub-Flow 900A wherein the user canthen modify discretely each of the “particles” in spatial and/ortemporal aspects.

Optionally, first and second Sub-Flows 900A and 900B may be presented tothe user in reverse such that the user defines the start/end etc. withinthe digital content rather than the path type/easing of a characteristicor characteristics. Alternatively, these may be interleaved in differentorders according to a preference of the user or default of the systemsuch that for example the user defines the start, defines the path,defines the end, and then defines the easing. Within other embodimentsof the invention the user may define that the path is fixed in respectof a characteristic of the digital content, e.g. time such that the useronly needs to define when the digital element is to initially appear orend and the GESGEAP defines the end/start accordingly. Otherwise theGESGEAP scales the path to meet the defined start/end points.

Now referring to FIG. 10 there is depicted an exemplary process Flow1000 for establishing a digital path and easing for manipulating and/ormodifying a digital element within a GESGEAP GUI according toembodiments of the invention. As depicted Flow 1000 comprises firstSub-Flow 1000A and second Sub-Flow 1000B, respectively. First Sub-Flow1000A comprising first to twelfth steps 1005A to 1060A, thesecomprising:

-   -   First step 1005A wherein the user defines that they wish to        establish a path wherein the first Sub-Flow 1000A proceeds to        second step 1010A.    -   Second step 1010A wherein the user determines the path        definition entry type, for example, pre-defined function, user        defined or mathematical definition wherein upon selection of the        appropriate option the process proceeds to one of third to fifth        steps 1015A to 1025A, respectively.    -   Third to fifth steps 1015A to 1025A relating to the pre-defined        function, user defined or mathematical function definitions of        the path. These being functionally similar to the processes        described above in respect of steps 815 to 825 in first Sub-Flow        800A of FIG. 8 for example. From each of these steps the first        Sub-Flow 1000A proceeds to sixth step 1030A.    -   Sixth step 1030A wherein the user defines the characteristic to        which the path should be applied.    -   Seventh step 1035A wherein a determination is made as to whether        the user wishes to link the path to a characteristic of the        digital element, digital content, or another set of data, input        etc. If the determination is negative the first Sub-Flow 1000A        terminates and the Flow 1000 proceeds to thirteenth step 1005B        in second Sub-Flow 1000B otherwise it proceeds to eighth step        1040A.    -   Eighth step 1040A wherein the user determines what link type        they wish to establish as depicted this again comprises        pre-defined function, user defined or mathematical definition        wherein upon selection of the appropriate option the process        proceeds to one of ninth to eleventh steps 1045A to 1055A,        respectively.    -   Ninth to eleventh steps 1045A to 1055A relating to the        pre-defined function, user defined or mathematical function        definitions of the path. These being functionally similar to the        processes described above in respect of steps 815 to 825 in        first Sub-Flow 800A of FIG. 8 for example. From each of these        steps the first Sub-Flow 1000A proceeds to twelfth step 1060A.    -   Twelfth step 1060A wherein the user determines what they link is        linked to. For example, this may be another characteristic of        the digital element, a characteristic of another digital element        forming part of the digital content the digital element is        associated with, an external parameter, a user input, a viewer        etc.

Accordingly, as depicted Flow 1000 progresses from first Sub-Flow 1000Ato second Sub-Flow 1000B upon the user determining that they havecompleted adding data relating to specification of a path. SecondSub-Flow 1000B relating to the easing and essentially follows the sameflow. Second Sub-Flow 1000B comprising thirteenth to twenty-fourth steps1005B to 1060B, these comprising:

-   -   Thirteenth step 1005B wherein the user defines that they wish to        establish an easing for a path wherein the second Sub-Flow 1000B        proceeds to fourteenth step 1010B.    -   Fourteenth step 1010B wherein the user determines the path        definition entry type, for example, pre-defined function, user        defined or mathematical definition wherein upon selection of the        appropriate option the process proceeds to one of fifteenth to        seventeenth steps 1015B to 1025B, respectively.    -   Fifteenth to seventeenth steps 1015B to 1025B relating to the        pre-defined function, user defined or mathematical function        definitions of the path. These being functionally similar to the        processes described above in respect of steps 815 to 825 in        first Sub-Flow 800A of FIG. 8 for example. From each of these        steps the second Sub-Flow 1000B proceeds to eighteenth step        1030B.    -   Eighteenth step 1030B wherein the user defines the        characteristic to which the path should be applied.    -   Nineteenth step 1035B wherein a determination is made as to        whether the user wishes to link the path to a characteristic of        the digital element, digital content, or another set of data,        input etc. If the determination is negative the second Sub-Flow        1000B terminates and the Flow 1000 proceeds to final step 1060        to apply or store the path and easing with respect to the        digital element and/or digital content or within a template file        otherwise it proceeds to twentieth step 1040B.    -   Twentieth step 1040B wherein the user determines what link type        they wish to establish as depicted this again comprises        pre-defined function, user defined or mathematical definition        wherein upon selection of the appropriate option the process        proceeds to one of twenty first to twenty third steps 1045B to        1055B, respectively.    -   Twenty first to twenty third steps 1045B to 1055B relating to        the pre-defined function, user defined or mathematical function        definitions of the path. These being functionally similar to the        processes described above in respect of steps 815 to 825 in        first Sub-Flow 800A of FIG. 8 for example. From each of these        steps the second Sub-Flow 1000B proceeds to twenty fourth 1060B.    -   Twenty fourth step 1060B wherein the user determines what they        link is linked to. For example, this may be another        characteristic of the digital element, a characteristic of        another digital element forming part of the digital content the        digital element is associated with, an external parameter, a        user input, a viewer etc.

Optionally, twelfth and twenty-fourth steps 1060A and 1060B may be priorto the user selection of the link types in eighth and twentieth steps1040A and 1040B respectively or be part of it.

Optionally, Flow 1000 provides the user with the option of repeating theFlow 1000 for another characteristic. Accordingly, the user can set thepath/easing for multiple characteristics of a digital element or set ofdigital elements, where the characteristics are selected from, but notlimited to, 1D physical position, 2D physical position, 3D physicalcolour, intensity, size, 2D aspect ratio, 3D aspect ratio, 1D rotation,2D rotation, 3D rotation, brightness,

Optionally, the path and easing are intrinsically linked such that whenthe characteristic is associated with the path the easing isautomatically associated rather than the user being able toindependently establish these at different points in the creationprocess.

Optionally, within other embodiments of Flow 1000 the definition of thecharacteristic to which a path/easy apply may be defined initially atthe start of the process Flow 1000 so that the path and easing areestablished for that characteristic and the user is then presented withthe option of repeating the Flow 1000 for another characteristic.

Exemplary process Flow 1000 represents an example where thepath(s)/easing(s) for the characteristics of a digital element aregenerated within a GUI of GESGEAP without any reference to an item ofdigital content to which the digital element is applied. Accordingly,the exemplary Flow 1000 relates to creation of an“effect”/transition/etc. which is then added to an item of electroniccontent.

Within other embodiments of the invention the path(s)/easing(s) aregenerated for a default digital element (e.g. a sphere, dot,alphanumeric character, etc.) wherein once the user completes theprocess the path(s)/easing(s) are stored without any reference to adigital element. Accordingly, the path(s)/easing(s) may be subsequentlyassociated with an item of digital content which is then manipulated bythe GESGEAP according to the path(s)/easing(s). In this manner a usercan define an “effect” which is then applied to elements of digitalcontent. In this manner, a user may define an effect which is thenapplied to digital content which may be alphanumeric text, text, animage, a set of images etc.

Within embodiments of the invention a path and/or easing may beassociated with user and/or viewer input. This may be, for example,through a user interface of an electronic device the user is usingand/or a user interface of another electronic device the viewer isusing. Alternatively, the user input and/or viewer input may beautomatically acquired through an electronic device associated withanother electronic device upon which the digital content comprising thedigital element is rendered upon. For example, this electronic devicemay be a user's PED such as a smartphone or activity tracker wherein acharacteristic of the user is acquired and employed. For example, adigital artist may make the rate of flashing of a digital elementproportional to the blood pressure of the viewer, a colour of a digitalelement linked to the viewer's heart rate, speed of walking, etc.Accordingly, digital content when rendered may be adjusted in aspectssuch as path and/or easing in dependence upon viewer characteristics aswell as other data externally acquired.

Within the steps of defining a path or easing through a mathematicalfunction or a pre-defined function the user may be provided with theoption of linking the function to one or more external elements whichare dynamically acquired when the digital content is rendered. Forexample, these one or more external elements may be stored within acloud database which is periodically updated, derived from data storedwithin a periodically updated cloud database, extracted from cloudstored content, extracted from a uniform resource locator (URL) of anitem of web content (e.g. web site, web page etc.) so that the pathand/or easing are dynamically defined rather than statically defined.This being independent of or in conjunction with dynamic data relatingto the viewer as described above.

For example, a colour path of a digital element may be a small circlewherein the centre of the circle is defined by a combination of twoparameters, if using for example CIE xy colour space, such as one factorscaling the current ambient temperature and another factor scaling acurrent value of a currency (e.g. which is defined based upon a profileof the view or current location of the viewer). If the colour path isdefined within a 3D colour space then a colour path may, for example, becentered upon or start at, a point defined in dependence upon threefactors, e.g. current ambient temperature, viewer heartrate and speed ofmotion of the viewer. Within another embodiment of the invention acharacteristic such as duration of a path may be defined as determinedin dependence upon externally acquired data such as user's speed ofmotion, ambient temperature, viewer's heartrate, stock market value etc.

Where the path and/or easing are established in dependence upon dynamicreal time data or periodically updated data then it would be evidentthat this rendering may require the viewer to employ a thin client, i.e.a thin version of the graphics editor or limited function version of thegraphics editor, rather than a convention media player so that the thinclient can generate the modified/manipulated digital element and renderit with the digital content.

Further, the digital element may be dynamically defined or defined upontemporal, spatial, geographical, jurisdictional aspects such that, forexample, the title of an item of multimedia content follows the samepath/easing in two locations but is different (e.g. in English in onelocation and Spanish in another) or a vehicle may be changed (e.g. froma Nissan in Japan to a Ford in the United States. Accordingly, brandingof audiovisual content may extend to dynamically assigning the digitalelement(s). Optionally, the digital content may be established independence upon a preference of the viewer. For example, a user viewinga science fiction film may state a preference for Federation starshipsrelative to Romulan or Vulcan for example so that when a digital elementdefined as a starship is rendered the user preferences result in anappropriate digital element being retrieved. This may apply to otheraspects of digital elements such as gender, body type, height, font,language, etc. Alternatively, the digital element may be defined by abroadcaster and/or distributor of the digital content.

Within embodiments of the invention described and depicted theunderlying technology is presented with respect to simple paths.However, it would be evident that in the definition of a path and/oreasing, either individually or as a combination, that complex paths maybe defined through user inputs such as via gestures, complexmathematical functions, externally derived data etc.

With respect to defining a path and/or easing one of more gesturecharacteristics or expressions may be employed. Such gesturecharacteristics or expressions may include, but not be limited, toextend of motion, velocity, direction, pressure, wheel, tilt, bearing,rotation, and a source of the gesture for example where the source ofthe gesture to which the gesture characteristics relate may include, butnot be limited to, a touchpad, a stylus, a mouse, keypad, keyboard,accelerometer or accelerometer derived data, tracked motion of a user ora predetermined portion of a user, an external image source, an externalaudiovisual source, an external multimedia source, biometric data of auser, and an item of environmental data. An expression or gesturecharacteristic may be applied to one or more behaviours/aspects of thepath and/or easing generation including, but not limited to, applyingglobal chaos, applying local chaos, applying smoothness, damping,applying jitter, defining a number or a count of instances of the pathand/or digital element, a weighting, simulated force applied to adigital element, direction, mapping, colour, colour variability,saturation, bleed, feature, grain, concentration, setting rate,viscosity, wetness, opacity and hardness, for example.

Such gesture characteristics or expressions may be automaticallydetermined by the GESGEAP from one or more user interfaces to theGESGEAP which may include, but not be limited to, an imagecapture/processing system, a gesture recognition system, a stylus, awearable device, a touchscreen, a keypad, a mouse, a touchpad, a tablet,an accelerometer, and a motion recognition system.

It would be evident that the multiple aspects described and depictedabove in respect of embodiments of the invention represent a subset ofthe features and techniques that can be applied individually or indifferent combinations.

If a user has enabled what the inventor refers to as an “intelligentpath” then a portion of a path and/or easing graphics engine (PA-GE) maybe altered to use “saliency” wherein the PA-GE processes the digitalcontent on the same layer and/or on one or more other layers specified,to define the path and/or easing. With a salient path the digitalelement may track an element of the digital content. For example, atitle may have a path defined relative to an object within the digitalcontent (e.g. a person, car, ball, aircraft, etc.). The object withinthe digital content may be defined by processing the content with one ormore image processing algorithms, or another intelligent mappingtechnology. Alternatively, a user may tag an initial region of thedigital content which is then subsequently tracked to define the path.

Optionally, the user may define a path and/or easing using such salientmethodologies within one element of digital content but apply them toanother digital element within another item of digital content. Forexample, a user may track the motion of a ball thrown within a highlightreel to establish a path/easing where they subsequently use this for atitle or other digital element.

Optionally, an intelligent path or salient path may be established byapplying one or more machine learning algorithms or one or more machinelearning processes to the digital content. The one or more machinelearning algorithms or one or more machine learning processes applied tothe digital content may be different in each instance of defining astart point of a path, defining an end point of the path, defining thepath, and defining the easing.

Specific details are given in the above description to provide athorough understanding of the embodiments. However, it is understoodthat the embodiments may be practiced without these specific details.For example, circuits may be shown in block diagrams in order not toobscure the embodiments in unnecessary detail. In other instances,well-known circuits, processes, algorithms, structures, and techniquesmay be shown without unnecessary detail in order to avoid obscuring theembodiments.

Implementation of the techniques, blocks, steps, and means describedabove may be done in various ways. For example, these techniques,blocks, steps, and means may be implemented in hardware, software, or acombination thereof. For a hardware implementation, the processing unitsmay be implemented within one or more application specific integratedcircuits (ASICs), digital signal processors (DSPs), digital signalprocessing devices (DSPDs), programmable logic devices (PLDs), fieldprogrammable gate arrays (FPGAs), processors, controllers,micro-controllers, microprocessors, other electronic units designed toperform the functions described above and/or a combination thereof.

Also, it is noted that the embodiments may be described as a processwhich is depicted as a flowchart, a flow diagram, a data flow diagram, astructure diagram, or a block diagram. Although a flowchart may describethe operations as a sequential process, many of the operations can beperformed in parallel or concurrently. In addition, the order of theoperations may be rearranged. A process is terminated when itsoperations are completed but could have additional steps not included inthe figure. A process may correspond to a method, a function, aprocedure, a subroutine, a subprogram, etc. When a process correspondsto a function, its termination corresponds to a return of the functionto the calling function or the main function.

Furthermore, embodiments may be implemented by hardware, software,scripting languages, firmware, middleware, microcode, hardwaredescription languages and/or any combination thereof. When implementedin software, firmware, middleware, scripting language and/or microcode,the program code or code segments to perform the necessary tasks may bestored in a machine readable medium, such as a storage medium. A codesegment or machine-executable instruction may represent a procedure, afunction, a subprogram, a program, a routine, a subroutine, a module, asoftware package, a script, a class, or any combination of instructions,data structures and/or program statements. A code segment may be coupledto another code segment or a hardware circuit by passing and/orreceiving information, data, arguments, parameters and/or memorycontent. Information, arguments, parameters, data, etc. may be passed,forwarded, or transmitted via any suitable means including memorysharing, message passing, token passing, network transmission, etc.

For a firmware and/or software implementation, the methodologies may beimplemented with modules (e.g., procedures, functions, and so on) thatperform the functions described herein. Any machine-readable mediumtangibly embodying instructions may be used in implementing themethodologies described herein. For example, software codes may bestored in a memory. Memory may be implemented within the processor orexternal to the processor and may vary in implementation where thememory is employed in storing software codes for subsequent execution tothat when the memory is employed in executing the software codes. Asused herein the term “memory” refers to any type of long term, shortterm, volatile, nonvolatile, or other storage medium and is not to belimited to any particular type of memory or number of memories, or typeof media upon which memory is stored.

Moreover, as disclosed herein, the term “storage medium” may representone or more devices for storing data, including read only memory (ROM),random access memory (RAM), magnetic RAM, core memory, magnetic diskstorage mediums, optical storage mediums, flash memory devices and/orother machine readable mediums for storing information. The term“machine-readable medium” includes but is not limited to portable orfixed storage devices, optical storage devices, wireless channels and/orvarious other mediums capable of storing, containing, or carryinginstruction(s) and/or data.

The methodologies described herein are, in one or more embodiments,performable by a machine which includes one or more processors thataccept code segments containing instructions. For any of the methodsdescribed herein, when the instructions are executed by the machine, themachine performs the method. Any machine capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that machine are included. Thus, a typical machine may be exemplifiedby a typical processing system that includes one or more processors.Each processor may include one or more of a CPU, a graphics-processingunit, and a programmable DSP unit. The processing system further mayinclude a memory subsystem including main RAM and/or a static RAM,and/or ROM. A bus subsystem may be included for communicating betweenthe components. If the processing system requires a display, such adisplay may be included, e.g., a liquid crystal display (LCD). If manualdata entry is required, the processing system also includes an inputdevice such as one or more of an alphanumeric input unit such as akeyboard, a pointing control device such as a mouse, and so forth.

The memory includes machine-readable code segments (e.g. software orsoftware code) including instructions for performing, when executed bythe processing system, one of more of the methods described herein. Thesoftware may reside entirely in the memory, or may also reside,completely or at least partially, within the RAM and/or within theprocessor during execution thereof by the computer system. Thus, thememory and the processor also constitute a system comprisingmachine-readable code.

In alternative embodiments, the machine operates as a standalone deviceor may be connected, e.g., networked to other machines, in a networkeddeployment, the machine may operate in the capacity of a server or aclient machine in server-client network environment, or as a peermachine in a peer-to-peer or distributed network environment. Themachine may be, for example, a computer, a server, a cluster of servers,a cluster of computers, a web appliance, a distributed computingenvironment, a cloud computing environment, or any machine capable ofexecuting a set of instructions (sequential or otherwise) that specifyactions to be taken by that machine. The term “machine” may also betaken to include any collection of machines that individually or jointlyexecute a set (or multiple sets) of instructions to perform any one ormore of the methodologies discussed herein.

The foregoing disclosure of the exemplary embodiments of the presentinvention has been presented for purposes of illustration anddescription. It is not intended to be exhaustive or to limit theinvention to the precise forms disclosed. Many variations andmodifications of the embodiments described herein will be apparent toone of ordinary skill in the art in light of the above disclosure. Thescope of the invention is to be defined only by the claims appendedhereto, and by their equivalents.

Further, in describing representative embodiments of the presentinvention, the specification may have presented the method and/orprocess of the present invention as a particular sequence of steps.However, to the extent that the method or process does not rely on theparticular order of steps set forth herein, the method or process shouldnot be limited to the particular sequence of steps described. As one ofordinary skill in the art would appreciate, other sequences of steps maybe possible. Therefore, the particular order of the steps set forth inthe specification should not be construed as limitations on the claims.In addition, the claims directed to the method and/or process of thepresent invention should not be limited to the performance of theirsteps in the order written, and one skilled in the art can readilyappreciate that the sequences may be varied and still remain within thespirit and scope of the present invention.

What is claimed is:
 1. A method comprising: defining, with a computersystem, a path within a virtual space to be associated with a digitalelement; defining, with the computer system, an easing to be associatedwith the defined path; associating, with the computer system, thedigital element, the path and the easing with an item of digitalcontent; and rendering, to a viewer upon another computer system, thedigital element within the item of digital content where the digitalelement is at least one of modified and manipulated in dependence uponthe path and easing; wherein the path defines a variation of a secondparameter of rendering the digital element in dependence upon a firstparameter for rendering the digital element; and the easing defines arate of change of applying the path as a function of the firstparameter.
 2. The method according to claim 1, wherein the pathdefinition is defined by a user selecting one of a pre-defined functionand a mathematical function; and the one of the pre-defined function andthe mathematical function has the first parameter established independence upon a characteristic of the item of digital content to whichthe digital element is associated at one or more user defined pointswithin the item of digital content.
 3. The method according to claim 1,wherein a user defines the path by one of a first process, a secondprocess, and a third process; in the first process the path definitionis defined by the user selecting one of a pre-defined function and amathematical function, the user selecting the first parameter and thesecond parameter for the one of the pre-defined function and themathematical function, and a value of the first parameter is establishedin dependence upon a characteristic of the item of digital contentselected by the user; in the second process the path definition isdefined by the user selecting one of a pre-defined function and amathematical function; the user selecting the second parameter of theone of the pre-defined function and the mathematical function; and avalue of the first parameter is established in dependence upon acharacteristic of the viewer viewing the item of digital content withthe digital element when it is rendered; in the third process the pathdefinition is defined by the user selecting one of a pre-definedfunction and a mathematical function; the user selecting the firstparameter and the second parameter for the one of the pre-definedfunction and the mathematical function, and a value of the firstparameter is established in dependence upon one or more items ofexternal data dynamically acquired when the item of digital content withthe digital element is rendered to a viewer.
 4. The method according toclaim 1, wherein one of: the path definition is defined by the computersystem capturing a gesture of a user whilst a representation of thevirtual space is rendered to the user; the path definition is defined bythe computer system capturing a gesture of the user whilst arepresentation of the virtual space is rendered to the user andcapturing at least one of one or more gesture characteristics of thegesture and one or more expressions associated with the user'sgeneration of the gesture; and the path definition is defined by thecomputer system capturing a gesture of the user whilst a representationof the virtual space is rendered to the user and generating the easingin dependence upon at least one of one or more gesture characteristicsof the gesture and one or more expressions associated with the user'sgeneration of the gesture captured by the computer system.
 5. The methodaccording to claim 1, wherein the representation of the virtual space isone of a two-dimensional virtual space, a three-dimensional virtualspace and a three-dimensional virtual space rendered as part of anaugmented reality environment or a virtual reality environment of auser; when the representation of the virtual space is thetwo-dimensional visual space or the three-dimensional space then a firstparameter for defining a position relative to a first axis of thevirtual space is defined in dependence upon at least one of a userinput, a characteristic of the digital element, a characteristic of theitem of digital content, and data established from an external source;when the representation of the virtual space is the two-dimensionalvisual space or the three-dimensional space then a second parameter fordefining a position relative to a second axis of the virtual space isdefined in dependence upon at least one of further user input, anothercharacteristic of the digital element, another characteristic of theitem of digital content, and other data established from anotherexternal source; when the representation of the virtual space is thethree-dimensional space then a third parameter for defining a positionrelative to a third axis of the virtual space is defined in dependenceupon at least one of additional user input, an additional characteristicof the digital element, an additional characteristic of the item ofdigital content, and additional data established from another externalsource; and when the representation of the virtual space is thethree-dimensional virtual space rendered as part of the augmentedreality environment or the virtual reality environment of the user thenthe path and easing are automatically established in dependence upontracking at least one of the user and an object associated with theuser.
 6. The method according to claim 1, further comprising defining,by a user of the computer system, a start point for the path within theitem of digital content; defining, by a user of the computer system, anend point for the path within the item of digital content; andautomatically applying the path and easing to the digital element over aportion of the item of digital content defined between the start pointand the end point.
 7. The method according to claim 1, wherein thedigital element is defined at the point of rendering the item of digitalcontent to a viewer; and the digital element is established independence upon at least one of a time of the rendering, a location ofthe rendering, a preference of the viewer, a distributor of the item ofdigital content, and a broadcaster of the item of digital content. 8.The method according to claim 1, wherein the path is closed and providesoscillatory behaviour of a characteristic of the digital element.
 9. Themethod according to claim 1, wherein at least one of: a start point forthe path within the item of digital content is automatically establishedby the computer system by applying at least one of a machine learningalgorithm and a machine learning process to the item of digital content;an end point for the path within the item of digital content isautomatically established by the computer system by applying at leastone of another machine learning algorithm and another machine learningprocess to the item of digital content; the path within the item ofdigital content is automatically established by the computer system byapplying at least one of a further machine learning algorithm and afurther machine learning process to the item of digital content; theeasing within the item of digital content is automatically establishedby the computer system by applying at least one of an additional machinelearning algorithm and an additional machine learning process to theitem of digital content.
 10. The method according to claim 1, furthercomprising defining a number M, where M represents a number ofrepetitions of the path to be employed in the rendering of the digitalelement; defining a number N, where N represents the number of times theeasing to be applied to the M repetitions of the path; wherein each of Mand N is either automatically established by the computer system ordefined by an input of a user of the computer system.
 11. The methodaccording to claim 1, wherein the path definition is defined by a userof the computer system selecting one of a pre-defined function and amathematical function; the one of the pre-defined function and themathematical function has the first parameter established in dependenceupon a characteristic of the item of digital content to which thedigital element is associated at one or more user defined points withinthe item of digital content; the easing is defined by one of the userselecting one of another pre-defined function and selecting anothermathematical function and capturing a gesture of the user; and when theeasing is defined by the user selecting one of the another pre-definedfunction and the another mathematical function the user also defines afurther characteristic of the item of digital content as an independentvariable for the one of the another pre-defined function and anothermathematical function.
 12. The method according to claim 1, wherein thepath definition is defined by a user of the computer system with one ofa first process, a second process and a third process; in each of thefirst process, the second process and the third process the user selectsone of a pre-defined function and a mathematical function; in the firstprocess the user selects the first parameter and the second parameterfor the one of the pre-defined function and the mathematical functionand a value of the first parameter is established in dependence upon acharacteristic of the item of digital content selected by the user; inthe second process the user selects the second parameter of the one ofthe pre-defined function and the mathematical function and a value ofthe first parameter is established in dependence upon a characteristicof a viewer viewing the item of digital content with the digital elementwhen it is rendered; in the third process the user selects the firstparameter and the second parameter for the one of the pre-definedfunction and the mathematical function and a value of the firstparameter is established in dependence upon one or more items ofexternal data dynamically acquired when the item of digital content withthe digital element is rendered to a viewer; and in each of the firstprocess, the second process and the third process: the easing is definedby one of the user selecting one of another pre-defined function andselecting another mathematical function and capturing a gesture of theuser; and when the easing is defined by the user selecting one of theanother pre-defined function and the another mathematical function theuser also defines a further characteristic of the item of digitalcontent as an independent variable for the one of the anotherpre-defined function and another mathematical function.
 13. The methodaccording to claim 1, wherein at least one of: the digital element isestablished by one or more selections of the user and comprises one of abrush stroke, an impression or series of impressions of a mark makingtool, a particle brush, a stroke tapestry, a digital image, a digitalanimation, an item of digital video content, an item of digital audiocontent, an item of digital audiovisual content, and an item of digitaltext content; at least one of the path and the easing can be manipulatedduring rendering to the user and modifications to the at least one ofthe path and the easing are made in dependence upon user'smanipulations; and the easing is defined by the user selecting a furthercharacteristic of the item of digital content.
 14. A system comprising:a microprocessor; a display for rendering to a user at least arepresentation of a virtual space; and a memory storing computerexecutable instructions where the executable instructions when executedby one or more processors of a system configure the system to execute aprocess comprising: defining a path within a virtual space to beassociated with a digital element; defining an easing to be associatedwith the defined path; and associating the digital element, the path andthe easing with an item of digital content; wherein the digital elementwithin the item of digital content when rendered to a viewer uponanother computer system is at least one of modified and manipulated independence upon the path and easing; the path defines a variation of asecond parameter of rendering the digital element in dependence upon afirst parameter for rendering the digital element; and the easingdefines a rate of change of applying the path as a function of the firstparameter.
 15. The system according to claim 14, wherein the pathdefinition is defined by a user selecting one of a pre-defined functionand a mathematical function; and the one of the pre-defined function andthe mathematical function has the first parameter established independence upon a characteristic of the item of digital content to whichthe digital element is associated at one or more user defined pointswithin the item of digital content.
 16. The system according to claim14, wherein a user defines the path by one of a first process, a secondprocess, and a third process; in the first process the path definitionis defined by the user selecting one of a pre-defined function and amathematical function, the user selecting the first parameter and thesecond parameter for the one of the pre-defined function and themathematical function, and a value of the first parameter is establishedin dependence upon a characteristic of the item of digital contentselected by the user; in the second process the path definition isdefined by the user selecting one of a pre-defined function and amathematical function; the user selecting the second parameter of theone of the pre-defined function and the mathematical function; and avalue of the first parameter is established in dependence upon acharacteristic of the viewer viewing the item of digital content withthe digital element when it is rendered; in the third process the pathdefinition is defined by the user selecting one of a pre-definedfunction and a mathematical function; the user selecting the firstparameter and the second parameter for the one of the pre-definedfunction and the mathematical function, and a value of the firstparameter is established in dependence upon one or more items ofexternal data dynamically acquired when the item of digital content withthe digital element is rendered to a viewer.
 17. The system according toclaim 14, wherein one of: the path definition is defined by the computersystem capturing a gesture of a user whilst a representation of thevirtual space is rendered to the user; the path definition is defined bythe computer system capturing a gesture of the user whilst arepresentation of the virtual space is rendered to the user andcapturing at least one of one or more gesture characteristics of thegesture and one or more expressions associated with the user'sgeneration of the gesture; and the path definition is defined by thecomputer system capturing a gesture of the user whilst a representationof the virtual space is rendered to the user and generating the easingin dependence upon at least one of one or more gesture characteristicsof the gesture and one or more expressions associated with the user'sgeneration of the gesture captured by the computer system.
 18. Thesystem according to claim 14, wherein the representation of the virtualspace is one of a two-dimensional virtual space, a three-dimensionalvirtual space and a three-dimensional virtual space rendered as part ofan augmented reality environment or a virtual reality environment of auser; when the representation of the virtual space is thetwo-dimensional visual space or the three-dimensional space then a firstparameter for defining a position relative to a first axis of thevirtual space is defined in dependence upon at least one of a userinput, a characteristic of the digital element, a characteristic of theitem of digital content, and data established from an external source;when the representation of the virtual space is the two-dimensionalvisual space or the three-dimensional space then a second parameter fordefining a position relative to a second axis of the virtual space isdefined in dependence upon at least one of further user input, anothercharacteristic of the digital element, another characteristic of theitem of digital content, and other data established from anotherexternal source; when the representation of the virtual space is thethree-dimensional space then a third parameter for defining a positionrelative to a third axis of the virtual space is defined in dependenceupon at least one of additional user input, an additional characteristicof the digital element, an additional characteristic of the item ofdigital content, and additional data established from another externalsource; and when the representation of the virtual space is thethree-dimensional virtual space rendered as part of the augmentedreality environment or the virtual reality environment of the user thenthe path and easing are automatically established in dependence upontracking at least one of the user and an object associated with theuser.
 19. The system according to claim 14, further comprising defining,by a user of the computer system, a start point for the path within theitem of digital content; defining, by a user of the computer system, anend point for the path within the item of digital content; andautomatically applying the path and easing to the digital element over aportion of the item of digital content defined between the start pointand the end point.
 20. The system according to claim 14, wherein thedigital element is defined at the point of rendering the item of digitalcontent to a viewer; and the digital element is established independence upon at least one of a time of the rendering, a location ofthe rendering, a preference of the viewer, a distributor of the item ofdigital content, and a broadcaster of the item of digital content. 21.The system according to claim 14, wherein the path is closed andprovides oscillatory behaviour of a characteristic of the digitalelement.
 22. The system according to claim 14, wherein at least one of:a start point for the path within the item of digital content isautomatically established by the computer system by applying at leastone of a machine learning algorithm and a machine learning process tothe item of digital content; an end point for the path within the itemof digital content is automatically established by the computer systemby applying at least one of another machine learning algorithm andanother machine learning process to the item of digital content; thepath within the item of digital content is automatically established bythe computer system by applying at least one of a further machinelearning algorithm and a further machine learning process to the item ofdigital content; the easing within the item of digital content isautomatically established by the computer system by applying at leastone of an additional machine learning algorithm and an additionalmachine learning process to the item of digital content.
 23. The systemaccording to claim 14, further comprising defining a number M, where Mrepresents a number of repetitions of the path to be employed in therendering of the digital element; defining a number N, where Nrepresents the number of times the easing to be applied to the Mrepetitions of the path; wherein each of M and N is either automaticallyestablished by the computer system or defined by an input of a user ofthe computer system.
 24. The system according to claim 14, wherein thepath definition is defined by a user of the computer system selectingone of a pre-defined function and a mathematical function; the one ofthe pre-defined function and the mathematical function has the firstparameter established in dependence upon a characteristic of the item ofdigital content to which the digital element is associated at one ormore user defined points within the item of digital content; the easingis defined by one of the user selecting one of another pre-definedfunction and selecting another mathematical function and capturing agesture of the user; and when the easing is defined by the userselecting one of the another pre-defined function and the anothermathematical function the user also defines a further characteristic ofthe item of digital content as an independent variable for the one ofthe another pre-defined function and another mathematical function. 25.The system according to claim 14, wherein the path definition is definedby a user of the computer system with one of a first process, a secondprocess and a third process; in each of the first process, the secondprocess and the third process the user selects one of a pre-definedfunction and a mathematical function; in the first process the userselects the first parameter and the second parameter for the one of thepre-defined function and the mathematical function and a value of thefirst parameter is established in dependence upon a characteristic ofthe item of digital content selected by the user; in the second processthe user selects the second parameter of the one of the pre-definedfunction and the mathematical function and a value of the firstparameter is established in dependence upon a characteristic of a viewerviewing the item of digital content with the digital element when it isrendered; in the third process the user selects the first parameter andthe second parameter for the one of the pre-defined function and themathematical function and a value of the first parameter is establishedin dependence upon one or more items of external data dynamicallyacquired when the item of digital content with the digital element isrendered to a viewer; and in each of the first process, the secondprocess and the third process: the easing is defined by one of the userselecting one of another pre-defined function and selecting anothermathematical function and capturing a gesture of the user; and when theeasing is defined by the user selecting one of the another pre-definedfunction and the another mathematical function the user also defines afurther characteristic of the item of digital content as an independentvariable for the one of the another pre-defined function and anothermathematical function.
 26. The system according to claim 14, wherein atleast one of: the digital element is established by one or moreselections of the user and comprises one of a brush stroke, animpression or series of impressions of a mark making tool, a particlebrush, a stroke tapestry, a digital image, a digital animation, an itemof digital video content, an item of digital audio content, an item ofdigital audiovisual content, and an item of digital text content; atleast one of the path and the easing can be manipulated during renderingto the user and modifications to the at least one of the path and theeasing are made in dependence upon user's manipulations; and the easingis defined by the user selecting a further characteristic of the item ofdigital content.